Sonos Compatible Controller

Sonos Compatible Controller

by Barry de Graaff

App

Sonos Compatible Controller for speakers on the local network

About Sonos Compatible Controller

Sonos Compatible Controller is a native Ubuntu Touch application for controlling compatible Sonos speakers directly on your local network. It is vibe coded using AI.

Sonos Compatible Controller is an independent third-party application. It is not affiliated with, endorsed by, or sponsored by Sonos, Inc. Sonos is a trademark of Sonos, Inc.

Features:
- Automatically discover compatible Sonos speakers using SSDP
- Optional manual discovery using the private IPv4 address of a Sonos speaker
- Select rooms and inspect current Sonos groups
- Add and remove rooms from groups
- Play, pause, stop, previous and next
- Seek within the current track
- Display track title, artist, album and album art when available
- Room volume and mute
- Group volume and group mute
- Bass, treble and loudness
- Supported speaker-specific controls including night mode, speech enhancement and sub gain
- Shuffle, repeat modes and crossfade
- Sleep timer
- Browse and edit the current queue
- Play a queue item, move it, remove it, clear the queue or save it as a Sonos Playlist
- Browse Sonos Favorites
- Browse Sonos Playlists
- Browse the local Sonos music library
- Browse other ContentDirectory containers exposed by the Sonos system
- Configure SMB servers and shares known only to this controller app
- Browse SMB2/SMB3 shares without adding them to the Sonos music library
- Play, play next or queue audio directly from compatible SMB shares using Sonos x-file-cifs paths
- Detect JPG, JPEG or PNG album artwork stored inside SMB music folders, including arbitrary artwork filenames, and show it on album folders, tracks and above the song title in the Player view
- Horizontally scroll Browse sources; SMB appears automatically when at least one share is configured
- Test saved SMB share connections from the app
- Select a Sonos line-in source
- List, enable, disable, create and delete Sonos alarms
- Rename a room
- Control the speaker status light
- Lock or unlock supported hardware controls
- Light and dark appearance modes selectable from the main menu
- No Sonos cloud account is required for local control

SMB support:

SMB shares configured in this app are not registered with Sonos and are not added to the Sonos music index. The app browses them directly using SMB2/SMB3. When a track is selected, the Sonos speaker receives the direct x-file-cifs:// path and reads the audio from the SMB server itself.

Public/guest shares are supported. A typical Samba guest configuration can use username guest, a blank password and WORKGROUP. Saved SMB credentials remain in the application's private local settings and are not sent to a developer-operated service. SMB settings writes are verified so persistence failures are reported instead of silently accepted.

The Sonos speakers must be able to reach and authenticate to the SMB server independently. Older Sonos products may require SMB1/NT1 to remain enabled on the Samba server. The controller itself uses SMB2/SMB3 for browsing.

Local-controller scope:

The app implements the local UPnP/SOAP controller interfaces exposed by compatible Sonos speakers. It does not configure a Sonos account, add or authenticate cloud music services, install firmware, perform Trueplay tuning, configure voice assistants, or onboard speakers to Wi-Fi. Those functions are not exposed as a stable local third-party controller API.

Music services that are already configured in the Sonos household can still be used when Sonos exposes them through Favorites, Sonos Playlists or ContentDirectory entries with playable metadata.

Compatibility:

The application is designed around the long-standing Sonos local UPnP/SOAP interfaces used by both S1 and S2 systems. Individual features are capability-dependent. For example, line-in, home-theater EQ controls and some device settings exist only on supporting models. Sonos firmware changes may affect compatibility in the future.

Permissions:
- Networking, required for SSDP discovery, direct local Sonos control and direct SMB browsing.

Privacy:
- no advertising
- no analytics or tracking
- no account required
- no developer-operated cloud service
- commands go directly from the Ubuntu Touch device to Sonos speakers and configured SMB servers on the local network
- obsolete Sonos library artwork URLs do not modify or invalidate app-local SMB configuration
- discovery, appearance and SMB settings are stored only in the application's private local storage

Source repository:
https://barrydegraaff.nl/ubuntu-touch/

Application license: MIT No Attribution (MIT-0)

Copyright 2026 Barry de Graaff

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

The SMB browsing bridge contains BSD-licensed third-party components. Their notices are included in THIRD_PARTY_LICENSES.md in the source and installed application data.

Recent Changes

release

Permissions

  • Networking

Community Built

This app has been released under the Public Domain license.It is developed in the open and you can review the source code.

Content Rating

This app has not been rated

Self reported rating using Open Age Rating Service

Info

  • Published Date

    Aug 22, 2026

  • Updated Date

    Sep 24, 2026

  • Current Version

    0.3.6

  • Total Downloads

    49

  • Latest Version Downloads

    17

  • Supported Architectures

    arm64

Links

Reviews

No reviews yet!