• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
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.

Is there a way to temporarily disable a module?

Scheduled Pinned Locked Moved General Discussion
27 Posts 6 Posters 10.1k Views 6 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.
  • B Offline
    BigDanT
    last edited by Oct 18, 2020, 7:56 PM

    Hi @sdetweil,

    That’s great! Any chance you could point me in the direction of some instructions?

    Cheers

    D.

    S 1 Reply Last reply Oct 18, 2020, 7:57 PM Reply Quote 0
    • S Offline
      sdetweil @BigDanT
      last edited by sdetweil Oct 18, 2020, 7:59 PM Oct 18, 2020, 7:57 PM

      @BigDanT I had to change code in both modules…

      someone else @wishmaster270 says if you use THIS module, then you can configure what you want, no coding changes…
      https://forum.magicmirror.builders/topic/9986/is-there-a-way-to-temporarily-disable-a-module/18?page=2
      I don’t know anything about that module

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • B Offline
        BigDanT
        last edited by Oct 19, 2020, 1:58 PM

        @wishmaster270 this looks great !!!

        I’m going to start to tinker tonight with the PIR thats just arrived.

        I dont suppose you have an example config file you could share that shows how you set-up profiles across the other modules ??

        Cheers

        D.

        W 1 Reply Last reply Oct 19, 2020, 8:17 PM Reply Quote 0
        • W Offline
          wishmaster270 Module Developer @BigDanT
          last edited by wishmaster270 Oct 19, 2020, 8:19 PM Oct 19, 2020, 8:17 PM

          @BigDanT Hi, sorry but I don’t use the modules in exact this configuration so I do not have a config that contains all parts. But I included an example folder to my GPIO module which contains instructions of how to setup an PIR. Maybe it is a good start: examples

          B 1 Reply Last reply Oct 20, 2020, 6:33 PM Reply Quote 0
          • B Offline
            BigDanT @wishmaster270
            last edited by Oct 20, 2020, 6:33 PM

            @wishmaster270 Thanks for the link.

            Using your instructions ive gotten the PIR up and running using your example config’s.

            It would be ace to see how you have set-up profiles across a number of modules (doesnt matter which one) and how they are switched using MMM-Screen-Powersave-Notification ??

            I understand the principles but cant for the life of me find ANY examples of how this is set-up in the config file to experiment with.

            Any help/exmaples would be great ?

            Thanks

            D.

            B 1 Reply Last reply Oct 20, 2020, 7:54 PM Reply Quote 0
            • B Offline
              BigDanT @BigDanT
              last edited by Oct 20, 2020, 7:54 PM

              @wishmaster270

              I’ve had a crack at writing an example config file to show you what im trying to do:-

              I’ve taken out anything that is sensitive.

              In short i want it to show every module, unless the PIR detects motion then it will disable the “Digital-Pictureframe” profile.

              I assume if you use “classes” thats a profile ? and if it doesnt have a “classes” set then its considered default.

              var config = {
                  address: '0.0.0.0',
                  electronOptions: {},
                  ipWhitelist: [],
                  modules: [
              
                      //Screen on & off timer{
                      {
                          module: 'MMM-ModuleScheduler',
                          config: {
                              notification_schedule: [
                                  // TURN THE MONITOR/SCREEN ON AT 07:30 EVERY DAY
                                  {
                                      notification: 'REMOTE_ACTION',
                                      schedule: '00 07 * * *',
                                      payload: {
                                          action: "MONITORON"
                                      }
                                  },
                                  // TURN THE MONITOR/SCREEN OFF AT 22:30 EVERY DAY
                                  {
                                      notification: 'REMOTE_ACTION',
                                      schedule: '30 22 * * *',
                                      payload: {
                                          action: "MONITOROFF"
                                      }
                                  },
                              ]
                          }
                      }, {
                          module: 'alert',
                          config: {}
                      }, {
                          module: 'updatenotification',
                          position: 'top_bar',
                          config: {
                              ignoreModules: []
                          }
                      }, {
                          module: 'clock',
                          position: 'top_left',
                          config: {}
                      },
              
                      // top Right Calenar
                      {
                          module: 'calendar',
                          header: 'Family Calendar',
                          position: 'top_left',
                          config: {
                              calendars: [{
                                      symbol: 'calendar-check',
                                      url: 'https://calendar.google.com/calendar/ical/xxx.ics',
                                  }
                              ],
                          }
                      },
              
                 
                      // Weather Section
                      {
                          module: 'currentweather',
                          position: 'top_right',
                          config: {
                              location: 'UK',
                              locationID: 'xxx',
                              appid: 'xxx',
                          }
                      }, {
                          module: 'weatherforecast',
                          position: 'top_right',
                          header: 'Weather Forecast',
                          config: {
                              location: 'false',
                              locationID: 'xxx',
                              appid: 'xxx',
                          }
                      },
              
                      //Screencast
              
                      {
                          module: 'MMM-Screencast',
                          position: 'bottom_right',
                          config: {
                              position: 'center',
                              height: 600,
                              width: 800,
                              castName: 'MagicMirror',
                          }
                      },
              
                      
                      //PLex Slideshow
                      {
                          module: 'MMM-PlexSlideshow',
                          classes: 'Digital-Pictureframe',
                          position: 'fullscreen_below',
                          config: {
                              plex: {
                                  hostname: '192.168.1.123',
                                  port: 32400,
                                  username: 'xxx@xxx.com',
                                  password: 'password',
                              },
                              transitionImages: true,
                          }
                      },
              
                      //MM Remote Control
                      {
                          module: 'MMM-Remote-Control',
                          header: '',
                          config: {
                              customCommand: {},
                              customMenu: 'custom_menu.json',
                              showModuleApiMenu: true,
                              apiKey: ''
                          }
                      },
              
                      //News Headlines
              		{
                      module: 'newsfeed',
                      position: 'top_bar',
                      header: '',
                      config: {
                      feeds: [{
                      title: 'BBC News',
                      url: 'http://feeds.bbci.co.uk/news/rss.xml'
                      }
                      ],
                      startTags: [],
                      endTags: [],
                      prohibitedWords: []
                      }
                      },
              
                      {
                          module: 'MMM-GPIO-Notifications',
                          config: {
                              '4': {
                                  gpio_state: 1,
                                  gpio_debounce: 0,
                                  delay: 30000,
                                  notifications: [{
                                          notification: 'SCREEN_ON',
                                          payload: {
                                              'forced': false
                                          }
                                      }, {}
                                  ]
                              }
                          }
                      },
                      {
                          module: 'MMM-Screen-Powersave-Notification',
                          config: {
                              delay: 60,
                              profiles: {
                                  "Digital-Pictureframe": 600
                              }
                          }
                      },
                      {
                          module: 'MMM-ViewNotifications',
                          position: 'bottom_left',
                          header: 'Notifications',
                          config: {
                              timeout: 0,
                              format: '{time}: "{module}" sent "{notification}" with {payloadData}', // See below for configurable options
                              includeModules: ["MMM-GPIO-Notifications", "MMM-Screen-Powersave-Notification"]
                          }
                      },
              
                  ]
              };
              
              /*************** DO NOT EDIT THE LINE BELOW ***************/
              if (typeof module !== 'undefined') {
                  module.exports = config;
              }
              
              

              I just need to understand how to add a module to a profile and then using your example PIR code how to transition from one profile to another

              W 1 Reply Last reply Oct 21, 2020, 8:30 AM Reply Quote 0
              • W Offline
                wishmaster270 Module Developer @BigDanT
                last edited by wishmaster270 Oct 21, 2020, 8:35 AM Oct 21, 2020, 8:30 AM

                @BigDanT
                Hi,

                you need another module to get it work: MMM-ProfileSwitcher

                The idea is to define a “normal” class to which all modules do belong that will be displayed if motion is detected. The Slideshow will be in class “slideshow”.
                The Screensave module is configured to not shutoff the monitor but change to the “slideshow” profile.
                If SCREEN_ON is triggered the Screensave module will change back to the profile that was used before the screensave (in our case “nomal”).

                I updated the config example to do the job (but i could not test it at the moment):

                var config = {
                    address: '0.0.0.0',
                    electronOptions: {},
                    ipWhitelist: [],
                    modules: [
                
                        //Screen on & off timer{
                        {
                            module: 'MMM-ModuleScheduler',
                            config: {
                                notification_schedule: [
                                    // TURN THE MONITOR/SCREEN ON AT 07:30 EVERY DAY
                                    {
                                        notification: 'SCREEN_ON',
                                        schedule: '00 07 * * *',
                                        payload: {
                                            'forced': true
                                        }
                                    },
                                    // TURN THE MONITOR/SCREEN OFF AT 22:30 EVERY DAY
                                    {
                                        notification: 'SCREEN_OFF',
                                        schedule: '30 22 * * *',
                                        payload: {
                                            'forced': true
                                        }
                                    },
                                ]
                            }
                        },
                
                        {
                            module: 'alert',
                            config: {},
                            classes: 'normal'
                        },
                
                        {
                            module: 'updatenotification',
                            position: 'top_bar',
                            config: {
                                ignoreModules: []
                            },
                            classes: 'normal'
                        },
                
                        {
                            module: 'clock',
                            position: 'top_left',
                            config: {},
                            classes: 'normal'
                        },
                
                        // top Right Calenar
                        {
                            module: 'calendar',
                            header: 'Family Calendar',
                            position: 'top_left',
                            config: {
                                calendars: [{
                                        symbol: 'calendar-check',
                                        url: 'https://calendar.google.com/calendar/ical/xxx.ics',
                                    }
                                ],
                            },
                            classes: 'normal'
                        },
                
                        // Weather Section
                        {
                            module: 'currentweather',
                            position: 'top_right',
                            config: {
                                location: 'UK',
                                locationID: 'xxx',
                                appid: 'xxx',
                            },
                            classes: 'normal'
                        }, {
                            module: 'weatherforecast',
                            position: 'top_right',
                            header: 'Weather Forecast',
                            config: {
                                location: 'false',
                                locationID: 'xxx',
                                appid: 'xxx',
                            },
                            classes: 'normal'
                        },
                
                        //Screencast
                
                        {
                            module: 'MMM-Screencast',
                            position: 'bottom_right',
                            config: {
                                position: 'center',
                                height: 600,
                                width: 800,
                                castName: 'MagicMirror',
                            },
                            classes: 'normal'
                        },
                
                        
                        //PLex Slideshow
                        {
                            module: 'MMM-PlexSlideshow',
                            classes: 'Digital-Pictureframe',
                            position: 'fullscreen_above',
                            config: {
                                plex: {
                                    hostname: '192.168.1.123',
                                    port: 32400,
                                    username: 'xxx@xxx.com',
                                    password: 'password',
                                },
                                transitionImages: true,
                            },
                            classes: 'slideshow'
                        },
                
                        //MM Remote Control
                        {
                            module: 'MMM-Remote-Control',
                            header: '',
                            config: {
                                customCommand: {},
                                customMenu: 'custom_menu.json',
                                showModuleApiMenu: true,
                                apiKey: ''
                            }
                        },
                
                        //News Headlines
                		{
                            module: 'newsfeed',
                            position: 'top_bar',
                            header: '',
                            config: {
                                feeds: [
                                    {
                                        title: 'BBC News',
                                        url: 'http://feeds.bbci.co.uk/news/rss.xml'
                                    }
                                ],
                                startTags: [],
                                endTags: [],
                                prohibitedWords: []
                            },
                            classes: 'normal'
                        },
                
                        {
                            module: 'MMM-GPIO-Notifications',
                            config: {
                                '4': {
                                    gpio_state: 1,
                                    gpio_debounce: 0,
                                    delay: 30000,
                                    notifications: [{
                                            notification: 'SCREEN_ON',
                                            payload: {
                                                'forced': false
                                            }
                                        }, {}
                                    ]
                                }
                            }
                        },
                        {
                            module: 'MMM-Screen-Powersave-Notification',
                            config: {
                                delay: 60,
                                hideInsteadShutoff: true, //do not shutoff the screen
                                changeToProfile: "slideshow" //change to this profile instead of hiding the modules
                            }
                        },
                        {
                            module: 'MMM-ViewNotifications',
                            position: 'bottom_left',
                            header: 'Notifications',
                            config: {
                                timeout: 0,
                                format: '{time}: "{module}" sent "{notification}" with {payloadData}', // See below for configurable options
                                includeModules: ["MMM-GPIO-Notifications", "MMM-Screen-Powersave-Notification"]
                            },
                            classes: 'normal'
                        },
                        {
                            //https://github.com/tosti007/MMM-ProfileSwitcher
                			module: "MMM-ProfileSwitcher",
                			config: {
                				defaultClass: "normal",
                				ignoreModules: [
                                    "MMM-ModuleScheduler",
                                    "MMM-Remote-Control",
                                    "MMM-GPIO-Notifications",
                				],
                			}
                		},
                
                    ]
                };
                
                /*************** DO NOT EDIT THE LINE BELOW ***************/
                if (typeof module !== 'undefined') {
                    module.exports = config;
                }
                
                1 Reply Last reply Reply Quote 0
                • S sletrabf referenced this topic on May 18, 2025, 6:12 PM
                • S sletrabf referenced this topic on May 18, 2025, 7:50 PM
                • 1
                • 2
                • 3
                • 3 / 3
                3 / 3
                • First post
                  22/27
                  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