MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    • Profile
    • Following 0
    • Followers 1
    • Topics 29
    • Posts 447
    • Groups 1
    R Offline
    1. Home
    2. rkorell
    3. Best
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    Posts

    Recent Best Controversial
    • RE: MMM-Globe: Meteosat imagery broken — fork with fix available

      Good afternoon, all!
      europeDiscNat is back! (plus a small CSS fix for a new white footer)

      for you, guys a quick update on the European satellite image situation.

      Since my fork EUMETSAT’s new WMS endpoint at view.eumetsat.int/geoserver/wms works fast, reliably and nice.

      Yesterday that stopped delivering fresh images!

      Today I figured out there even is a new version (small changes in URL) v1.1.0 is now v1.3.0 API - but both of them are only returning a stale image from yesterday evening:

      https://view.eumetsat.int/geoserver/wms?service=WMS&version=1.1.0&request=GetMap&layers=msg_fes:rgb_naturalenhncd&...
      https://view.eumetsat.int/geoserver/wms?service=WMS&version=1.3.0&request=GetMap&layers=msg_fes:rgb_naturalenhncd&...
      

      But here’s the surprise: the old europeDiscNat URL is back and working again!
      So if you’ve been in trouble with looking for actual pictures without the SLIDER API, this works right now:

      style: 'europeDiscNat',
      

      is re-born …

      One thing to watch out for: Unfortunately EUMETSAT has changed the image format slightly. The footer bar at the bottom (logo + timestamp) used to be black — invisible against the MagicMirror background. It’s now white and a bit taller, which causes a small white artifact at the bottom of the globe.

      I’ve pushed a fix that adds a black CSS overlay to mask the footer. Just update the module:

      cd ~/MagicMirror/modules/MMM-Globe
      git pull
      npm install
      

      Of course the SLIDER styles (geoColorEurope, geoColorUSA, etc.) continue to work fine if you prefer those.

      Happy mirroring!

      Warmest regards,
      Ralf

      posted in Showcase
      R
      rkorell
    • RE: Need help with MMM-MQTTbridge not "communicating" with MMM-RTSPStream

      @Cr4z33 Good afternoon,
      I do not have the time to dig too deep into MMM-MQTTbridge …
      But what I see checking your console logfile and compare this to your first posting:
      You obviously had managed that the MQQT message arrives and is acknowledged.

      .
      The message you receive is:

      {
          "Action": "Pulse",
          "Code": "Invite",
          "Data": {
              "CallID": "5",
              "IsEncryptedStream": false,
              "LocaleTime": "2025-04-30 10:40:43",
              "LockNum": 2,
              "RealUTC": 1746002443,
              "SupportPaas": false,
              "TCPPort": 37777,
              "UTC": 1746006043.0,
              "UserID": "101"
          },
          "Index": 0,
          "deviceType": "DHI-VTO3311Q-WP",
          "serialNumber": "****"
      }
      

      This is what you trying to capture in your mqttDisctionary.js
      I’m not 100% sure if you

      1. catch the right data-value : - is your jsonpath correct?
      2. is “notiID” the right place for the module name you try to reach?

      Just spontaneous thoughts about your issue - maybe misleading …

      Regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: How to Swipe between pages

      @sdetweil said in How to Swipe between pages:

      sadly MagicMirror forum search stinks

      :-)
      what I’m using regularly and works pretty well is external search via Google with limitation to site forum.mgicmirror.builders …
      Astonishing…

      Regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: MMM-NowPlayingOnSpotify: surviving Spotify's 6-month refresh-token expiry (a maintained fork)

      Dear @KristjanESPERANTO ,
      thanks :-)
      Good idea - I’ve added a screenshot right now.
      (closed a documentation error regarding first / re-authorization in parallel).

      Warm regards,
      Ralf

      posted in Showcase
      R
      rkorell
    • RE: Need help with MMM-MQTTbridge not "communicating" with MMM-RTSPStream

      @sdetweil Take your time!
      Family is most important.
      This issue is REALLY not important, neither urgent.
      I do not need this module right now - was just for testing, if I can help @Cr4z33 further with some examples to copy - as asked.

      So don’t hurry.

      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: MMM-Universal-Pir issues

      @eyesallin ,
      MMM-Universal-Pir needs correct configuration for the screen-on / screen-off commands.
      These commands are dependant of your Pi-Model and OS.
      The default is for bookworm/wayland config.
      If your Pi differs you need the correct command.
      For older OS versions this are commands with xrandr …

      Good luck.
      Regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • MMM-NowPlayingOnVolumio — a fresh "now playing" module for Volumio

      Good evening!

      After a lot of on-and-off wrestling with Spotify on my mirror, I finally sat down and built something new — and I’m genuinely happy with how it turned out: MMM-NowPlayingOnVolumio.

      The backstory (some of you will feel this pain 🙂)

      I’ve run Spotify through librespot for long time now, and it kept breaking in ever-new and creative ways. The latest one — the login5 change — finally finished it off for me: hard to fix, only community support and no chances that things will become better.
      So I decided finally to jump ship to Tidal.

      That meant my beloved (forked) MMM-NowPlayingOnSpotify was suddenly out of a job — Tidal doesn’t expose a “currently playing” API the way Spotify does. The existing Volumio modules would have been the obvious fallback… but they’re pretty old (8 and 9 years) and simply too old for a current Trixie / Node 22 setup (ancient socket.io and friends). So: a new module, written from scratch against current Volumio (4.x) and current Node.

      The silver lining

      Moving to Tidal pushed me onto Volumio’s Premium tier — and that turned unexpectedly even into a
      real win. (I’m not THAT big fan of “payment-plans” at all - but: I get noticeably better sound quality (Spotify via Volumio is quality-limited by intent), and (that’s the surprise) the Premium plan unlocks Volumio’s Music Metadata, so the module can show a proper artist biography right on the mirror. More info and better sound — I’ll happily take that trade.

      What it does

      • Shows what Volumio is playing — cover, title, artist, progress bar and
        elapsed/total time.
      • Optional artist biography from Volumio’s Music Metadata (Premium), Between Artists’s Name and progreess bar - shown page by page with a gentle cross-fade — no jittery scrolling.- Because Volumio is the source of truth, it works with any source: Tidal, Spotify, Qobuz, web radio, local files — no changes when you switch services.
      • When nothing is playing it quietly fades to the Volumio logo.
      • Clean split: the backend holds a persistent socket.io connection and does the work, the frontend just displays. It reconnects on its own and survives browser reloads.

      NPOV_on.png

      Config

      Basically just your Volumio host:
      (some options more available - see documentaion on github)

      {
        module: "MMM-NowPlayingOnVolumio",
        position: "bottom_left",
        // header: "Volumio",
        config: {
          volumioHost: "volumio.local",
          showArtistBio: true
        }
      }
      

      One dev note for the curious: current Volumio runs a socket.io 2.x server, so socket.io-client is pinned to exactly 2.4.0 — 2.5.0 and the 4.x line won’t connect. That one cost a moment to figure out. 🙂

      GitHub (MIT): https://github.com/rkorell/MMM-NowPlayingOnVolumio

      Feedback, issues and PRs are very welcome — especially from fellow Volumionists.

      Happy mirroring!

      Warmest regards,
      Ralf

      (module is included in 3rd-party-module-list)

      posted in Entertainment
      R
      rkorell
    • RE: MMM-Moon module - how to resize?

      @cricket said in MMM-Moon module - how to resize?:

      It appears there is no size option in the module itself. I

      I’ve had the same issue not with size but with alignment and had resolved this within the middle-center region and have used:

      .region.middle.center {
        width: 45%;
       
      }
      

      in custom.css.

      This works for me to position the moon nicely above earth in my implementation.
      Bildschirmfoto von  am 08_05_2025, 09_57_35 08_05_2025, 09-57-35.jpg
      Regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: Need "correct" version of node-libgpiod ....

      @sdetweil OK; thanks.
      I will stop to handle these mismatches.
      Will try to get the MM-Module runnable .
      Console/terminal runs with node may not be necessary …
      Thanks anyway for your kind support!
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: MMM-NowPlayingOnVolumio — a fresh "now playing" module for Volumio

      @KristjanESPERANTO ,
      Ahh… OK.
      Seems acceptable to me (I’m not a friend of “getting all” - but in this special case…).
      Have switched to “all activities” for all important public modules.

      Thanks again for your hint and kind guidance!
      Ralf

      posted in Entertainment
      R
      rkorell
    • RE: Fontawsome symbol usage for calendar help requested.

      @sdetweil said in Fontawsome symbol usage for calendar help requested.:

      https://docs.magicmirror.builders/modules/calendar.html#configuration-options

      Thanks!
      Warm regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: Need "correct" version of node-libgpiod ....

      @sdetweil thx!

      posted in Troubleshooting
      R
      rkorell
    • RE: MMM-NowPlayingOnVolumio — a fresh "now playing" module for Volumio

      @KristjanESPERANTO Cool. Neverthelss, I stay at current setting.
      Thanks!

      Ralf

      posted in Entertainment
      R
      rkorell
    • RE: MMM-Tronity

      Don‘t forget to go to the target module directory before installing!

      cd MMM-Tronity
      

      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: Need "correct" version of node-libgpiod ....

      @sdetweil Dear Sam,
      thanks for this information.
      Can you please enlighten me?
      I can read what you wrote and I got a light idea - but didn’t understand …

      I definitely have used your install script.
      what is @electron and
      what correlation is between node-libgpiod and @electron ? and what will this

      ../../node_modules/.bin/electron-rebuild
      

      do?

      Sorry for these questions - I would like to understand, what happens.

      If this is “neccessary” I will try to automate this for others with a postinstall script.
      Thanks for your effort!
      warmest regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: MMM-MQTTScreenOnOff - alternative to PIR

      @olex.s @sdetweil , dear all,

      As you know for sure I‘m really a fan of MMM-Pir - for (my) good reasons.
      For a friend of mine I‘ve build a second mirror and because he is heavily engaged in smarten his home :-) I‘ve considered to use alternatives to a PIR sensor - because they are definitely unsmart…
      With this I‘ve seeked for an integration for his homee solution which is not really capable for MQTT and randomly found a really cool device which I would like to share with you, guys!
      This is not a „motion“ sensor but a real „presence“ sensor (radar based, not infrared) which even is able to identify a silently sitting person!
      In addition this genius thingy talks MQTT, delivers the „presence“ status in a JSON object and so it is absolutely easy to use it with magic mirror and the herein presented module MQTTScreenOnOff.

      This sensor is pretty expensive and invented and build by a small startup here in Germany 🇩🇪 .
      You can find this sensor here.
      The webpage is in German but for some reason the default UI is in English :-)
      From my perspective this is defnitely worth the money (this is the fourth radar sensor I‘ve bought but the first one which is in the near of „working“)

      The mqttTopic transmitted is: „tele/senvolon/STATE“ and the mqttPayloadOccupancyField is „presence“.
      (The middle part is configurable in the sensor‘s UI, I‘ve decided to use vendor‘s name).

      I REALLY miss the nice animation and the dimming of MMM-Pir but I‘m definitely thinking about to use this sensor as well.
      (Which would be a major effort because my Mirror has an exact slot for the PIR sensor which is round and this sensor is squared so I will have to do some rough wood-work. On the other hand I MAY place the sensor away from the mirror on the opposite wall or in an other place and hide the hole from PIR sensor ….)

      Nice MQTT module - thanks for this idea!

      Warmest regards,
      Ralf

      posted in System
      R
      rkorell
    • RE: MMM-FRITZ-Box-Callmonitor-py3 + MMM-Callmonitor-Current-Call Window

      @wuermchen which fork are you using?
      There was a newer implementation, I guess last year.
      This version resolved the sticky caller-window (at least for me).

      Good luck,
      Regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: Cal EXT3 - understanding transforming

      @_V_ as you might have overseen you can not only check several conditions (as Sam (@sdetweil ) suggested) - separated by else or not but you can make several changes to the same event at one check.

      e.g.:

      eventTransformer: (ev) => {
        if (ev.title.search("Restmüll & Papier & Gelber Sack") !== -1) {ev.isFullday = [true], ev.title = "Alle Tonnen", ev.symbol = [ "fa-regular fa-trash-can" ], ev.color = "fuchsia"}
        if (ev.title.search("Therapie") !== -1) { ev.title = "Sitzung", ev.symbol = [ "fa-solid fa-mug-hot" ], ev.color = "Forestgreen"}
      return ev
         			  }, // end Eventtransformer 
      

      In the above example you can see

      • the modification of the color (as you already had identified,
      • the change of the kind of event (from “scheduled” to “Fullday-Event”)
      • the assignment of a different symbol (with font-awesome-symbols: double check their web-page, keep in mind that only the “STANDARD” (non-payed) versions will be shown in Magic Mirror) and
      • the change of the title of the event.

      Hope this helps.
      Good luck!
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • RE: PIR / MQTT - Presence sensor(s) revived

      Good afternoon!

      today’s check of MMM-PresenceScreenControl shows me an issue posted by @icemanmw , which wasn’t on my radar but is an easy and useful addition.
      Thanks for this idea.
      I’ve added two additional parameters mqttUser and mqttPassword for those of you requiring additional authentification.

      In Addition to this external trigger I had have some issues resolved :

      While migrating my MagicMirror setup from Bookworm to Debian 13 (Trixie), I ran into a few things that required
      changes to MMM-PresenceScreenControl. Since others might face the same issues, here’s a summary.

      v1.1.0: GPIO fallback for Trixie + touch simplification

      Trixie ships with libgpiod 2.x, which is a breaking API change from 1.x. The node-libgpiod npm package doesn’t work
      with it (and also has issues with newer Electron versions). Rather than waiting for upstream fixes, the module now
      auto-detects the situation and falls back to Python/gpiozero, which works perfectly on Trixie out of the box. No
      configuration change needed — if you’re on Bookworm, nothing changes; if you’re on Trixie, it just works.

      I also simplified the touch handling: the old touchMode parameter (0-3) is gone. Touch/click is now always active —
      tap anywhere to wake up the display and reset the timer. Less config, same result.

      v1.2.0: Removed VNC disconnect workaround

      On older setups (X11), I had a double-click feature that would shut off the screen AND disconnect the VNC session to
      avoid a “mini window” problem. Turns out this is no longer needed: wayvnc (0.9.1+) on Wayland/labwc natively manages
      screen power through the wlr-output-power-management protocol. When you connect via VNC, the screen turns on. When you
      disconnect, it goes back to whatever state it was in. Clean and simple — so I removed the workaround entirely.

      Both updates are fully backwards-compatible. If you’re upgrading from v1.0.x, just pull the latest version. The only
      thing to clean up in your config is removing touchMode and vncDisconnectCommand if you had them — but even if you
      don’t, they’re simply ignored.

      Have fun and a nice rest of the day.

      Warmes regards,
      Ralf

      posted in System
      R
      rkorell
    • RE: Next release arm32 users, need your help

      Dear Sam, @sdetweil

      yes — my MMM-PresenceScreenControl module is one of those. It uses node-libgpiod (native C addon for GPIO/PIR sensor
      access), which requires @electron/rebuild to match Electron’s Node ABI.

      That said, the module has had an automatic fallback since v1.1.0: if node-libgpiod fails to compile or rebuild, it
      transparently falls back to Python/gpiozero for PIR sensor access. So it will work without a successful
      electron-rebuild — just via a different code path.

      The dependency setup (as of v1.3.1):

      • node-libgpiod is an optionalDependency (npm continues if it fails)
      • @electron/rebuild is not listed as a dependency — it’s installed on-demand by the postinstall script only when
        node-libgpiod is actually present
      • If either fails, the module falls back to Python gracefully

      So for your testing: this module would be a good candidate to verify if electron-rebuild still works, but it won’t
      break if it doesn’t.

      My other modules (MMM-Globe, MMM-Best-Weather, MMM-My-Actual-Weather, etc.) are pure JavaScript — no native addons, no
      electron-rebuild needed.

      Hope this helps.
      Warmest regards,
      Ralf

      posted in Troubleshooting
      R
      rkorell
    • 1 / 1