A module for the MagicMirror, to display informations about the currently playing songs on your Sonos system.
JavaScript CSS
Switch branches/tags
Nothing to show
Clone or download
Latest commit 93cbea5 May 15, 2017


code climate API License


This is an adaption of the MagicMirror-SonosModule by Vaggan. It was modified to fit the new module system and got some enhancements in visualisation an configuration.

Sonos Module




Navigate into your MagicMirror's modules folder:

cd ~/MagicMirror/modules

Clone this repository:

git clone https://github.com/CFenner/MMM-Sonos

Navigate to the new MMM-Sonos folder and install the node dependencies.

cd MMM-Sonos/ && npm install --production

Configure the module in your config.js file.


To run the module properly, you need to add the following data to your config.js file.

	module: 'MMM-Sonos',
	position: 'top_right', // you may choose any location
	config: {}

You also can set some options to hide different parts of the module.

Option Description Default
showStoppedRoom Trigger the visualization of stopped rooms. true
showAlbumArt Trigger the visualization of the album art. true
showRoomName Trigger the visualization of the room name. true

Known Issues

The module may not be able to access the data of the sonos API due to a Cross-Origin Resource Sharing (CORS) issue. This could be solved by adding the following lines to the sonos-http-api.js just before res.write(new Buffer(jsonResponse)); in the sonos api. Remember to restart the service after the change.

  res.setHeader("Access-Control-Allow-Origin", "http://localhost");
  res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");

How to Install Sonos-API

To install the Sonos-API just clone the repository to your PI.

git clone https://github.com/jishi/node-sonos-http-api.git

Navigate to the new node-sonos-http-api folder and install the node dependencies.

cd node-sonos-http-api && npm install --production

Now you can run the service with:

npm start

I really recommend to use PM2 like it is described on the MagicMirror Wiki page.

cd ~/Sonos
npm start