Sonos with Linux detailed Howto



Show first post
This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

50 replies

Userlevel 2
Can somebody tell me why we need WINE? I mean if we have a Linux server running samba, can't Sonos browse smb? Is there a different way to get the sonos to browse the smb share? Is the wine only to browse over the web? is there a way to get Sonos to browse the local network using just samba?

My phone can mount it smb and or nfs, is there a way to mount the share with the phone then have sonos browse locally to the phone?

I am going to try it.

By the way my NAS is Ubuntu 12.04 server LTS.
Userlevel 2
Can somebody tell me why we need WINE? I mean if we have a Linux server running samba, can't Sonos browse smb

WINE is needed to run the DCR on Linux, not for anything related to file-serving.
Userlevel 2
Please forgive my ignorance DCR? I am not familiar with that. Is that for playing something other than music?
Userlevel 2
Please forgive my ignorance DCR? I am not familiar with that. Is that for playing something other than music?

The DCR is the common abbreviation for the Windows desktop controller.
Userlevel 2
Ah well that makes sense. Sorry, I was confused. I just got my Sonos yesterday, and I didn't even know you could control it from anything but an Android. My G/F bought it for a birthday present because I just got a new phone. I just was having an issue getting to my samba shares, googled, and found this thread. Thanks for clarifying. I probably should have started a new thread. My post will get you to your samba shares using the Android controller. I hope it is helpful to some people.
Userlevel 2
I read all of the posts on Sonosweb, made the changes to sonos.pl, and installed the CPAN modules (rather than the Debian packages for them). I'm running Debian Wheezy and I can see the pages for the webserver but none identify zones.

Here is the startup

./sonos.pl
4/224318 crit: ./sonos.pl:172 main::main Starting up version 0.72!
If the application doesn't seem to work:
* you may need to disable your firewall or allow the application
* make sure the computer is on the same network as Sonos boxes
* make sure the Sonos Controller software isn't running on the same computer

Now, point your browser to http://localhost:8001 and leave this running

4/224318 alert: ./sonos.pl:561 main::sonos_prefsdb_load Loading Prefs DB
4/224318 info: ./sonos.pl:571 main::sonos_renew_subscriptions invoked
4/224318 alert: ./sonos.pl:244 main::plugin_load Loading Plugins
4/224318 notice: ./sonos.pl:1273 main::upnp_search_cb Added name: 192.168.1.10 - Sonos CONNECT:AMP uuid:RINCON_000E5.... type: urn:schemas-upnp-org:device:ZonePlayer:1
4/224319 notice: ./sonos.pl:1273 main::upnp_search_cb Added name: 192.168.1.7 - Sonos BRIDGE uuid:RINCON_000E..... type: urn:schemas-upnp-org:device:ZonePlayer:1
4/224319 notice: ./sonos.pl:1273 main::upnp_search_cb Added name: 192.168.1.8 - Sonos PLAY:5 uuid:RINCON_000E..... type: urn:schemas-upnp-org:device:ZonePlayer:1

When I browse to the Sonosweb pages, there is just an endless loop as it searches for zones without success

4/224741 alert: ./sonos.pl:1407 main::http_handle_request URI: /index.html
4/224741 info: ./sonos.pl:2126 main::http_send_response Sending response to /index.html
4/224741 alert: ./sonos.pl:1407 main::http_handle_request URI: /favicon.ico
4/224741 alert: ./sonos.pl:1407 main::http_handle_request URI: /favicon.ico
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/index.html
4/224746 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/index.html
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/prototype.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/scriptaculous.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/iSonos.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/noartwork.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/main.css
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/builder.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/effects.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/dragdrop.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/controls.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/slider.js
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/plugins.html
4/224746 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/plugins.html
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/controlerBG.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/controlerBtn.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/volume.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/search.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/fauxTbl.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/spinner.gif
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/queueBtn.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/infoLbl.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/sonosbg.jpg
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/inc/optBtn.png
4/224746 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224746 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224749 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224749 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224752 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224752 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224755 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224755 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224758 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224758 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224801 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224801 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json
4/224804 alert: ./sonos.pl:1407 main::http_handle_request URI: /isonos/data/init.json
4/224804 info: ./sonos.pl:2126 main::http_send_response Sending response to /isonos/data/init.json

Any suggestions on how to troubleshoot?
Userlevel 2
I don t know much about scripting but what i know is that i download a free app working on android devices to control amarok...
Maybe is it possible to script something that ask amarok not to play file but to ask samba to send file ? **** i bet it s not this way ... amarok could ask sonos to ask samba ? ahhh.... i thought i had an issue, just adding ideas so .... sorry
Userlevel 2
All I did was get a new sonos.pl from this archive

https://github.com/miracle2k/sonosweb/archive/master.zip

and replaced the sonos.pl from the purple.org version with all of the other code the same.

If I had to do it again I would just install the whole package from here : https://github.com/miracle2k/sonosweb/
Has anyone had any luck getting the latest sonos 5.x players running in linux? I've been trying for a couple days no wtih no success and am now on the hunt for the older 4.x vs to see if any of them will still run...
Userlevel 2
Has anyone had any luck getting the latest sonos 5.x players running in linux? I've been trying for a couple days no wtih no success and am now on the hunt for the older 4.x vs to see if any of them will still run...
Hello, 5.3 will install when using the latest wine-staging with dotnet40 installed through winetricks. However, the Sonos app is then still unable to play anything from Deezer.

This is really painful, so today I decided to try to install Sonos Android app to my Chromium browser using Arc Welder and it works perfectly! You may also want to consider this option.
Userlevel 2
... today I decided to try to install Sonos Android app to my Chromium browser using Arc Welder and it works perfectly! You may also want to consider this option.

You made my day - thank you !!!

Tried this method weeks ago on a chromebook, but there the app didn't find my SONOS-system 😞 (I think there are issues with working on devices at the local network, i.e. on a chromebook you also can't address your printer at local network directly).

BUT: After reading this post I tried it again in Chrome-browser on Linux Mint and what a surprise: it works perfectly as you told. 😃
Userlevel 2
Very handy! Better bookmark this for later 😉
Just in case anyone comes across this post: Since Samba 4.X.X you might need to add

ntlm auth = yes

in the global block of your smb.conf to enable your System to connect to your Samba share.
Thanks, I just spent the best part of 4 hours trying to link my Sonos to my debian server, Windows was no problem.
ntlm auth = yes
is the right answer!