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

    Posts

    Recent Best Controversial
    • RE: MMM-FroniusSolar family modules

      Fixed. IP can now be defined in the config.js:

      InverterIP: "<yourInverterIP>",
      
      posted in Utilities
      C
      chrisfr1976
    • RE: Calendar - Past Events are a different color/shade

      @roysim11 See the css in the calendar module. If this is Ext3 you’ll find this:

      .CX3 .event.passed {
        filter: brightness(0.8) grayscale(0.5);
        opacity:0.5;	
      }
      

      Then for example to this:

      .CX3 .event.passed {
      /*  filter: brightness(0.8) grayscale(0.5);
        opacity:0.5;	*/
      }
      

      Cheers,
      Chris

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: MMM-GoogleMapsTraffic

      See also my fork: MMM-GoogleMapsTraffic.
      Runs fine without any issue since months.

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: MMM-Fireworks

      @chrisfr1976 Hi,
      maybe interesting also for others: There is a canvas opacity parameter set now. So you can can keep all your stuff visible in the background while the fireworks is dancing on your mirror. I didn’t had this feature in mind, but I got this request on GitHub. I like that, too ;-)

      A picture from my playground to explain what I mean:

      Bildschirmfoto 2025-02-07 um 22.30.49.png

      posted in Entertainment
      C
      chrisfr1976
    • RE: MMM-CalendarExt3 possible to round the corners?

      @bobbylx
      Hello,

      for the radius update the css and add a border-radius in .CX3 .cell:

      .CX3 .cell {
        border: 1px solid var(--celllinecolor);
        background-color: var(--cellbgcolor);
        height: calc(
          var(--cellheaderheight) + var(--cellfooterheight) +
            calc(var(--eventheight) * var(--maxeventlines))
        );
        position: relative;
        border-radius: 25px; /*adjust as you like it*/
      }
      

      But it might look strange if it is too big. This radius is valid for every calendar cell of course. I use it, too with 3px only.

      Result with 25px:

      Bildschirmfoto 2025-01-25 um 22.02.21.png

      For the other issue I’m also searching for a solution. You can see it my picture :)

      I had this idea:

      CX3 .week {
        width: 100%;
        padding: 0 5px;
        margin-top: 5px; /*this helps but is stupid in the next week*/
        height: calc(
          var(--cellheaderheight) + var(--cellfooterheight) +
            calc(var(--eventheight) * var(--maxeventlines))
        );
        position: relative;
      }
      
      posted in Utilities
      C
      chrisfr1976
    • RE: pm2 doesnt work with crontab

      @plainbroke
      Then use this:
      /usr/local/bin/pm2

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: not updating

      @Eagleyes27
      The message from google maps can be ignored currently. There is a plan to change the marker but currently the old AND EASY way is still working. I have a new version already ready but to get the new marker running is really complicated. So I didn’t update the module to this until now.

      I care about the module now. Is works good on my side. If you discover any general issues I can fix it. But this is important: do you run my fork?: https://github.com/ChrisF1976/MMM-GoogleMapsTraffic

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: MMM-Fireworks

      Hi,
      I’ve just released an update to solve several requests and problems.

      https://github.com/ChrisF1976/MMM-Fireworks

      • Multiple Scheduled Events:
        • The module now accepts an array of scheduled events (each with its own start time and text message). At each event time, the fireworks start with the corresponding overlay text.
      • Two separate notifications have been added:
        • NotificationStart (e.g. “FireFireFire”) starts the fireworks immediately using either the notification’s payload text or a default (textNotification).
        • NotificationStop (e.g. “StopFire”) stops the fireworks immediately if they are running.
        • When a notification is received, it overrides the scheduled events temporarily without affecting future scheduled shows.

      See also updated config!

      You can test the notifications with this simple module. I used it during development. I created a small start and stop button you can use.
      If you want to test the notification sender module you need to change the “fullscreen_above” to any other region of the mirror. Otherwise you cannot click on the buttons because they’re “behind” the MMM-Fireworks module…

      Config:

      {
        module: "MMM-NotificationSender",
        position: "top_left",
        config: {
          startNotification: "FireFireFire",
          stopNotification: "StopFire",
          startText: "Test me!", //leave blank to use text from MMM-Fireworks
          stopText: "Stop Fire", //nothing happens currently - maybe not needed
        }
      },
      

      Module:

      Module.register("MMM-NotificationSender", {
        // Default configuration options. These can be overwritten in config.js.
        defaults: {
          // Notification names to send. Other modules can listen to these names.
          startNotification: "START_NOTIFICATION",
          stopNotification: "STOP_NOTIFICATION",
          // Text payloads for the notifications.
          startText: "This is a start notification.",
          stopText: "This is a stop notification."
        },
      
        // Called when the module is started
        start: function() {
          Log.info("Starting module: " + this.name);
        },
      
        // Override the getDom method to create your custom UI.
        getDom: function() {
          // Create a wrapper element to contain the buttons.
          var wrapper = document.createElement("div");
          wrapper.style.textAlign = "center";
      
          // Create the Start button
          var startBtn = document.createElement("button");
          startBtn.innerHTML = "Start";
          startBtn.style.marginRight = "10px";
          startBtn.addEventListener("click", this.sendStartNotification.bind(this));
          wrapper.appendChild(startBtn);
      
          // Create the Stop button
          var stopBtn = document.createElement("button");
          stopBtn.innerHTML = "Stop";
          stopBtn.addEventListener("click", this.sendStopNotification.bind(this));
          wrapper.appendChild(stopBtn);
      
          return wrapper;
        },
      
        // Function to send the start notification
        sendStartNotification: function() {
          // Log to console and MagicMirror logs to check the button click event.
          console.log("Start button pressed. Sending start notification...");
          Log.info(
            "Sending start notification: " +
              this.config.startNotification +
              " with payload: " +
              JSON.stringify({ text: this.config.startText })
          );
      
          // Send the notification with the configured name and payload.
          this.sendNotification(this.config.startNotification, { text: this.config.startText });
        },
      
        // Function to send the stop notification
        sendStopNotification: function() {
          // Log to console and MagicMirror logs to check the button click event.
          console.log("Stop button pressed. Sending stop notification...");
          Log.info(
            "Sending stop notification: " +
              this.config.stopNotification +
              " with payload: " +
              JSON.stringify({ text: this.config.stopText })
          );
      
          // Send the notification with the configured name and payload.
          this.sendNotification(this.config.stopNotification, { text: this.config.stopText });
        }
      });
      
      
      posted in Entertainment
      C
      chrisfr1976
    • RE: MMM-CalendarExt3 possible to round the corners?

      @chrisfr1976

      I’ve found it!

      .CX3 .weekGrid {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(7, [cell-start] 1fr [cell-end]);
        grid-auto-columns: 0fr;
        margin-top: 5px; /* ADD THIS*/
      }
      

      Bildschirmfoto 2025-01-25 um 22.26.27.png

      posted in Utilities
      C
      chrisfr1976
    • RE: MMM-ChameleonWeather shows wrong temp

      Hi,
      I fixed the issue. :)

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: MMM-EventSearch - show events in your city from google

      @bugphunk The sliding option is a really nice idea. I’ve just implemented it to the code. If you discover any bugs or new improvement ideas please let me know :)

      posted in Entertainment
      C
      chrisfr1976
    • EVCC Dashboard MM module

      Hello,

      I’m using EVCC for load PV surplus. Currently I’m using parts of the EVCC dashboard in an I-Frame. This is not as nice as it could be.

      For all who don’t know what it is: EVCC.

      Has anyone tried to create something for the MM project?

      BR Chris.

      posted in Requests
      C
      chrisfr1976
    • RE: Cannot find module '#server_functions'

      @sdetweil Hey, no problem generally but I‘m out until Thursday. I‘ll send it then.

      posted in Troubleshooting
      C
      chrisfr1976
    • RE: MM-Watcher - MagicMirror Config.js Auto-Refresh Script

      @sdetweil thats why I made the module. The Pi is completely headless. So I’m in the kitchen with my laptop and enjoy this autorefresh now. Before that I’ve used a Script on my Smartphone. Also manual and annoying :-)
      And sure, also the xdotool command is just pressing “ctrl+r” for me.

      posted in System
      C
      chrisfr1976
    • RE: MMM-euro2024

      @0m4r There is a problem with the token. I think, I’m stupid, but:

      You write for the config token: [YOUR_TOKEN]

      So I’ve tried token:[1234567890], With this I get an error in the config.js and the mirror does not start up.
      Then I’ve tried token:1234567890,. Same issue.
      Then I’ve tried token:"1234567890", Then the config.js is okay and electron starts. But in this case I get an error message:
      [ERROR] MMM-euro2024 fetchTeams 2018 {"message":"Your API token is invalid.","errorCode":400}

      …of course I received a real API-key from Daniel. Copy+paste, so the key real in my config is okay.

      How should I enter the API-Key? :thinking_face:

      posted in Sport
      C
      chrisfr1976
    • MM-Watcher - MagicMirror Config.js Auto-Refresh Script

      Hi,

      I’m currently working on a new module. I had a lot of updates to do in my code to adjust the layout. After saving changes, I had to manually refresh the MagicMirror application every time. This process is tedious, especially if you’re frequently experimenting with configurations.

      That’s where this script comes in. By monitoring your config.js file (or a module.js file) for changes, it automates the refresh process. Now, every time I save my config.js, the Mirror refreshes itself instantly.

      It’s seamless, efficient, and saves you from the hassle of restarting the application manually.

      Perfect for developers and tinkerers alike, this script ensures your MagicMirror reflects your updates in real-time, letting you focus on creativity instead of logistics.

      https://github.com/ChrisF1976/MM-Watcher

      Give it a try…

      Regards,
      Chris.

      posted in System
      C
      chrisfr1976
    • 1
    • 2
    • 2 / 2