MagicMirror² v2.14.0 is available! For more information about this release, check out this topic.


  • Module Developer

    Limitation of api. Until spotify really starts, api doesn’t return even the device list. So module can do nothing. Sorry.

  • Hi,

    im wondering if its possible to allign the spotify module to the right edge of the screen? ive recently added a covid-19 module and the spotify module alligns its self with the longer left edge. also is it possible to increse the padding on the bottom, i just want to space it away from th e covid module.

    hopefully the link works and you can see what i mean…


  • Module Developer

    Try this. (But it could make unexpected result by your other modules. anyway worthy to try)

    /* In your `css/custom.css` */
    #SPOTIFY {
        position: absolute;

    Or you can adjust by manual.

    #SPOTIFY {
      left: 150px ; /* depends on your layout */

  • @Sean Ok thank you for your answer. apart from that your modules work really well, continue like that!

  • Hi !
    Thirst, thanks to the devs for this module and the multi account function !

    I have a problem with the module. After some songs, the module stay stuck on a song.
    I have only some modules on my MM, and all others modules work fine.

    We are 2 at home, with 2 premium account and 1 Spotify Connect receiver. We mainly use le Spotify Connect receiver.

    The problem occurs with all the revceivers (Spotify connect or smartphones).

    Do you have an idea of the problem ?

    Annotation 2020-04-14 180026.png

          "USERNAME": "First user",
          "CLIENT_ID" : "xxx",
          "CLIENT_SECRET" : "yyy",
          "AUTH_DOMAIN" : "http://localhost",
          "AUTH_PATH" : "/callback",
          "AUTH_PORT" : "8888",
          "SCOPE" : "user-read-private app-remote-control playlist-read-private streaming user-read-playback-state user-modify-playback-state",
          "TOKEN" : "./firstuser_token.json"
          "USERNAME": "Second user",
          "CLIENT_ID" : "zzz",
          "CLIENT_SECRET" : "www",
          "AUTH_DOMAIN" : "http://localhost",
          "AUTH_PATH" : "/callback",
          "AUTH_PORT" : "8888",
          "SCOPE" : "user-read-private app-remote-control playlist-read-private streaming user-read-playback-state user-modify-playback-state",
          "TOKEN" : "./seconduser_token.json"

  • I did a clean total reinstallation of my RPI3 under Raspbian Buster. Always the same problem, module blocked after a few minutes.

    Can we think of a bug?
    I will reinstall MMM-Spotify with only 1 account configured to see if the problem recurs.

  • Hi!

    I have been trouble shooting an install of MMM-Spotify for a few days now and I can’t seem to authorize/authenticate the token…

    When executing Step 4 of the install Get Auth;

    cd ~/MagicMirror/modules/MMM-Spotify node first_auth.js

    My terminal hangs up and I need to CTRL-C to get out.

    pi@raspberrypi:~/MagicMirror $ npm start dev
    > magicmirror@2.11.0 start /home/pi/MagicMirror
    > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js "dev"
    [2020-04-20 17:46:11.400] [LOG]    Starting MagicMirror: v2.11.0
    [2020-04-20 17:46:11.413] [LOG]    Loading config ...
    [2020-04-20 17:46:11.427] [LOG]    Loading module helpers ...
    [2020-04-20 17:46:11.433] [LOG]    No helper found for module: alert.
    [2020-04-20 17:46:11.538] [LOG]    Initializing new module helper ...
    [2020-04-20 17:46:11.539] [LOG]    Module helper loaded: updatenotification
    [2020-04-20 17:46:11.541] [LOG]    No helper found for module: clock.
    [2020-04-20 17:46:12.258] [LOG]    Initializing new module helper ...
    [2020-04-20 17:46:12.260] [LOG]    Module helper loaded: MMM-Spotify
    [2020-04-20 17:46:12.262] [LOG]    All module helpers loaded.
    [2020-04-20 17:46:12.503] [LOG]    Starting server on port 8080 ... 
    [2020-04-20 17:46:12.531] [LOG]    Server started ...
    [2020-04-20 17:46:12.533] [LOG]    Connecting socket for: updatenotification
    [2020-04-20 17:46:12.535] [LOG]    Connecting socket for: MMM-Spotify
    [2020-04-20 17:46:12.539] [LOG]    Sockets connected & modules started ...
    [2020-04-20 17:46:12.700] [LOG]    Whoops! There was an uncaught exception...
    [2020-04-20 17:46:12.701] [ERROR]  Error: listen EADDRINUSE: address already in use
        at Server.setupListenHandle [as _listen2] (net.js:1226:14)
        at listenInCluster (net.js:1274:12)
        at GetAddrInfoReqWrap.doListen [as callback] (net.js:1413:7)
        at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:65:10) {
      code: 'EADDRINUSE',
      errno: 'EADDRINUSE',
      syscall: 'listen',
      address: '',
      port: 8080

    My 8080 port is already in use causing an error? I’ve followed the installation procedure and verified my callback in Spotify Dev is copy and pasted as http://localhost:8888/callback
    My spotify.config.json;

          "USERNAME": "myname",
          "CLIENT_ID" : "spot_id",
          "CLIENT_SECRET" : "spot_secret",
          "AUTH_DOMAIN" : "http://localhost",
          "AUTH_PATH" : "/callback",
          "AUTH_PORT" : "8888",
          "SCOPE" : "user-read-private app-remote-control playlist-read-private streaming user-read-playback-state user-modify-playback-state",
          "TOKEN" : "./myname_token.json"

    My MagicMirror config.js;

    var config = {
            address: "localhost",           // Address to listen on, can be:
                                  // - "localhost", "", "::1" to listen on loopback interface
                                  // - another specific IPv4/6 to listen on a specific interface
                                  // - "", "", "::" to listen on any interface
                                  // Default, when address config is left out, is "localhost"
            port: 8080,
            ipWhitelist: ["", "::ffff:", "::1"],
                                                                    // Set [] to allow all IP addresses
                                                                   // or add a specific IPv4 of :
                                                                   // ["", "::ffff:", "::1", "::ffff:"],
                                                                   // or IPv4 range of --> use CIDR format :
                                                                   // ["", "::ffff:", "::1", "::ffff:"],
            language: "en",
            timeFormat: 24,
            units: "imperial",
            // serverOnly:  true/false/"local" ,
                                 // local for armv6l processors, default 
                                 //   starts serveronly and then starts chrome browser
                                 // false, default for all  NON-armv6l devices
                                 // true, force serveronly mode, because you want to.. no UI on this device
            modules: [
                            module: "MMM-Spotify",
                            position: "lower_third",
                            config: {
                                    style: "mini", // "default" or "mini" available
                                    control: "hidden", //"default", "hidden" available
                                    updateInterval: 2000,
                                    onStart: null, // disable onStart feature with `null`
                                    allowDevices: [], //If you want to limit devices to display info, use this.
                                    // allowDevices: ["RASPOTIFY", "My iPhoneX", "My Home speaker"],

    Any help, thanks

  • Module Developer

    It’s not issue of module. You just executed MagicMirror twice.

  • @Sean I really appreciate the reply.

    Im new so maybe I didn’t convey my issue/logs correctly. As I mention above, when I try to execute Step 4, I get the error below…

    pi@raspberrypi:~/MagicMirror/modules/MMM-Spotify $ node first_auth.js
    [SPOTIFY_AUTH] creating server { USERNAME: 'MyName',
      CLIENT_ID: 'My_ID',
      CLIENT_SECRET: 'My_Secret',
      AUTH_DOMAIN: 'http://localhost',
      AUTH_PATH: '/callback',
      AUTH_PORT: '8888',
       'user-read-private app-remote-control playlist-read-private streaming user-read-playback-state user-modify-playback-state',
      TOKEN: './MyName_token.json' }
    [SPOTIFY_AUTH] Opening URL.(

    At this point the terminal just stalls out. Hope this clarifies the above, my configs are still above. Thanks again

  • Module Developer

    If browser couldn’t open the url automatically, copy the URL and paste it into your web browser.

Log in to reply