MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-Scenes2

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    31 Posts 4 Posters 5.5k Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R Offline
      ric @MMRIZE
      last edited by

      @MMRIZE
      Thanks anyway.

      Would you say it’s the Pi version? Software/hardware version? Could this be fixed with a Chromium update in the future?

      R 1 Reply Last reply Reply Quote 0
      • R Offline
        ric @ric
        last edited by

        Very strange. I have created a third scene. Now it is already running for several hours.

        1 Reply Last reply Reply Quote 0
        • B Offline
          Babene1 Project Sponsor
          last edited by

          I have the same problem, after about 1 hour there is no change of modules.
          I also want a constant change of MMM-iframeReload and MMM-iframeReload2 module

          MagicMirror Version 2.27, Rapsberry PI 4 – 4 GB
          My Config:

          /* MagicMirror² Config Sample
           *
           * By Michael Teeuw https://michaelteeuw.nl
           * MIT Licensed.
           *
           * For more information on how you can configure this file
           * see https://docs.magicmirror.builders/configuration/introduction.html
           * and https://docs.magicmirror.builders/modules/configuration.html
           *
           * You can use environment variables using a `config.js.template` file instead of `config.js`
           * which will be converted to `config.js` while starting. For more information
           * see https://docs.magicmirror.builders/configuration/introduction.html#enviromnent-variables
           */
          let config = {
          	address: "0.0.0.0",	// Address to listen on, can be:
          							// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
          							// - another specific IPv4/6 to listen on a specific interface
          							// - "0.0.0.0", "::" to listen on any interface
          							// Default, when address config is left out or empty, is "localhost"
          	port: 8080,
          	basePath: "/",	// The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
          									// you must set the sub path here. basePath must end with a /
          	ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "192.168.178.249", "192.168.178.49"], // Set [] to allow all IP addresses
          									// or add a specific IPv4 of 192.168.1.5 :
          									// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
          									// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
          									// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
          
          	useHttps: false,			// Support HTTPS or not, default "false" will use HTTP
          	httpsPrivateKey: "",	// HTTPS private key path, only require when useHttps is true
          	httpsCertificate: "",	// HTTPS Certificate path, only require when useHttps is true
          
          	language: "de",
          	locale: "de-DE",
          	logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
          	timeFormat: 24,
          	units: "metric",
          	
          	electronOptions: {
          		webPreferences: {
          		  webviewTag: true,
          		},
          	  },
          
          	modules: [
          		{
          			module: "alert",
          		},
          		/*{
          			module: "clock",
          			position: "top_left"
          		},*/
          		{
          		// https://github.com/TheBogueRat/MMM-iFrameReload
          		module: 'MMM-iFrameReload',
          		position: 'top_left',	// This can be any of the regions.
          		classes: "SEITE_ZWEI",
          		//header: 'Rezept des Tages',
          		config: {
          			// See 'Configuration options' for more information.
          				url: http://test/Anzeigetafeln/Anzeige1.html,
          				width: "1900px", // Optional. Default: 100%
          				height: "1080px", //Optional. Default: 100px
          				refreshInterval: 100
          			}
          		},
          		{
          			// https://github.com/TheBogueRat/MMM-iFrameReload
          			module: 'MMM-iFrameReload2',
          			position: 'top_left',	// This can be any of the regions.
          			classes: "Welcome SEITE_EINS",
          			//header: 'Rezept des Tages',
          			config: {
          				// See 'Configuration options' for more information.
          					url: http://test/Anzeigetafeln/Logo.html,
          					width: "1900px", // Optional. Default: 100%
          					height: "1080px", //Optional. Default: 100px
          					refreshInterval: 3600
          				}
          			},
          			{
          				// https://github.com/MMRIZE/MMM-Scenes2
          				module: "MMM-Scenes2",
          				position: "bottom_bar",
          				config: {
          					life: 1000 * 10,
          					activeIndicator: ' ',
          					inactiveIndicator: ' ',
          					scenario: [
          						{ // First scene definition
          							exit: ["SEITE_ZWEI"],
          							enter: ["SEITE_EINS"],
          							life: 1000 * 10,
          						  },
          						  { // Second scene definition
          							exit: ["SEITE_EINS"],
          							enter: ["SEITE_ZWEI"],
          							life: 1000 * 45,
          						  },
          					],
          				}
          			},
          		{
          			// https://github.com/Jopyth/MMM-Remote-Control
          			module: 'MMM-Remote-Control',
          			// uncomment the following line to show the URL of the remote control on the mirror
          			// position: 'bottom_left',
          			// you can hide this module afterwards from the remote control itself
          			config: {
          				customCommand: {
          					//monitorStatusCommand: 'rm -rf .config/Electron',
          					monitorStatusCommand: '~pi/restartBrowsercache.sh'
          				},  // Optional, See "Using Custom Commands" below
          				showModuleApiMenu: false, // Optional, Enable the Module Controls menu
          				secureEndpoints: true, // Optional, See API/README.md
          				// uncomment any of the lines below if you're gonna use it
          				customMenu: "custom_menu.json", // Optional, See "Custom Menu Items" below
          				// apiKey: "", // Optional, See API/README.md for details
          				// classes: {} // Optional, See "Custom Classes" below
          			}
          		},
          	]
          };
          
          /*************** DO NOT EDIT THE LINE BELOW ***************/
          if (typeof module !== "undefined") { module.exports = config; }
          
          

          I insert the line in my mm.sh:

          export ELECTRON_DISABLE_GPU=1

          pm2 Log:

          [1965:0521/220109.925300:ERROR:gbm_wrapper.cc(76)] Failed to get fd for plane.: Datei oder Verzeichnis nicht gefunden (2)
          [1965:0521/220109.925398:ERROR:gbm_wrapper.cc(259)] Failed to export buffer to dma_buf: Datei oder Verzeichnis nicht gefunden (2)

          uname -a
          Linux raspberryanzeige1 6.1.0-rpi8-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.73-1+rpt1 (2024-01-25) aarch64 GNU/Linux

          file /bin/bash
          /bin/bash: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=198ac6b0cc01bf774c5746a36a6fd31dead9bda5, for GNU/Linux 3.7.0, stripped

          Does anyone have any idea what I can do? Thanks

          M 1 Reply Last reply Reply Quote 0
          • M Offline
            MMRIZE @Babene1
            last edited by

            @Babene1
            I researched about that error message.
            The error messages seemed not to be the module or logic issue but the GPU/System issue. (Usually in -nix machines about graphic drivers.)

            However, I’m not sure the error message is related to your symptom actually. There is a chance these two things could be independent.

            What I suggest for the test is;

            • use simpler animation effects or no animation.
            • give a longer life for the scene.
            • Remove all other 3rd party modules, except default modules (clock, …)

            If it helps, we can progress from it anyhow.
            But if not; I think I rarely have things to do.

            B 1 Reply Last reply Reply Quote 0
            • B Offline
              Babene1 Project Sponsor @MMRIZE
              last edited by Babene1

              @MMRIZE

              Thank you for your answer, I agree with you, I also think that the error message has nothing to do with the problem.
              Error message is written to the log after the start and the freezing of the module happens after about 1 hour.

              I used the default animation, unfortunately I don’t know how to remove the animation completely.
              Have also removed the MMM remote control module.
              So there are only three modules left, MMM-Scenes2, MMM-iFrameReload and MMM-iFrameReload2

              I switched off WLan-power Save and deactivated IPV6.

              No improvement, no improvement.

              Next tests will be longer times and I will use a different browser.

              Other test scenarios ?

              M 2 Replies Last reply Reply Quote 0
              • M Offline
                MMRIZE @Babene1
                last edited by

                @Babene1
                To disable animation, you can set animation: null in defaultEnter definition or each scene role definition.

                /* example for default behaviour */
                defaultEnter: {
                  animation: null,
                  duration: 1000,
                  gap: 0,
                },
                
                
                /* example for each scene definition */
                scenario: [
                  {
                    name: "scene1",
                    enter: {
                      role: "role1",
                      animation: null,
                      ...
                

                I’m suspecting Chrome’s memory leaks. These factors may cause memory leaks.

                • improper handling timer
                • CSS transition/Animation

                I’ll modify some code to confirm to clear out garbage timer. Wait a little.

                By the way, can you test the default clock module instead of MMM-iFrame Things? (To make things clearer)

                1 Reply Last reply Reply Quote 0
                • M Offline
                  MMRIZE @Babene1
                  last edited by

                  @Babene1
                  It’s been updated, but I’m not expecting much. Because timers are rarely used in my code(only two), I don’t think that was the cause of the problem. Anyway, I fixed it so that when the timer is used, it is turned off as soon as possible.

                  1 Reply Last reply Reply Quote 0
                  • R Offline
                    ric
                    last edited by

                    I have switched to MMM-Carousel and experimented with it. It ran for a few days without any problems. Then I installed more modules and customised my configuration. And now the problem is occurring again. The last scene hangs at some point, so I was afraid it might be this one: MMM-BackgroundSlideshow. However, you are not using this, so it is unlikely to be due to this.

                    My next steps:

                    1. disable MMM-BackgroundSlideshow.
                    2. completely reinstall everything and only install the modules I want to have at the end and then not change anything else. Let’s see if I will be successful.
                    M 1 Reply Last reply Reply Quote 0
                    • M Offline
                      MMRIZE @ric
                      last edited by

                      @ric
                      Chrome(Chromium) is notorious for memory leaks. On Transition/Animation, this kind of error is often reported in some environments (+ some GPU driver issues). Sometimes, a newer version looks like it solves this issue, but the issue returns in subsequent versions again.
                      If you have more memory, this symptom seems relieving, but not absolutely.

                      R 1 Reply Last reply Reply Quote 0
                      • B Offline
                        Babene1 Project Sponsor
                        last edited by

                        Result of my test:

                        • ListenpunktUsing “external_broqwser=firefox” no improvement, after about 1 hour no changes from the modul.

                        • ListenpunktWith “animation: null”, no improvement, after about 1 hour no changes from the modul.

                        • ListenpunktWith default clock and calendar, no problem (test run about 2,5 hours)

                        Next test, with just an iframe module and the MMM-Simple Logo module. This module combination could be a solution for me

                        M 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 3 / 4
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy