2 ms·
> What new features do you even get with S2 that require more powerful hardware? * Airplay * Hi-res audio formats * Better onboarding experience (BLE based, an
by avianlyric 5y ago
> What new features do you even get with S2 that require more powerful hardware?
* Airplay
* Hi-res audio formats
* Better onboarding experience (BLE based, and can take advantage of iOS APIs to share Wifi password)
* Support for DTS and Dolby Atmos
I suspect the reason for bifurcation is because the speakers form a cluster on your network. The apps don’t talk to individual speakers, the speakers elect a cluster leader and the app talks only with the leader. The leader then figures out how to get your command to the target speaker, which may be via your normal wifi, but could also be via the private Sonos Net mesh network the speakers form.
They want all the speakers to run exactly the same firmware because it’ll significantly reduce the complexity of their net code. No need to write forward or backwards compatible protocols, every speaks the same language. Side effect of this choice is that your firmware features become limited by your oldest hardware, even with feature flags, binary size could still be an issue for old devices.
So this means at some point you need either:
1. Start running two firmware versions, and some how make your net code forward/backwards compatible. Very difficult when dealing with tightly defined high entropy protocols needs for low latency comms, and super tight timing requirements.
2. Split make a set of your devices stuck on old software and incompatible with new hardware. So new and old can no longer join the same cluster. But simplify your net code.
Sonos obviously chose option 2, and I can understand why they made that choice. As for the apps, having them communicate with two different Sonos clusters, and somehow merge the UI sounds like a UI nightmare. Not unsolvable, but it wouldn’t surprise me if they tried it, and decided the experience was so crap and confusing, they were better of just making two apps.
Given what Sonos do, and rather extreme technical requirements of syncing audio to within a millisecond or two over dodgy wifi connections. I can sympathise with the difficult technical and product decisions that led to S1/S2. I personally doubt it’s an artificial limitation created for cynical profit pumping. But I can totally see it as way of reducing their software development complexity and costs, which is not an unreasonable business decision (Sonos isn’t a charity after all).