• 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.

Version 2.30.0 Calendar fix for clipping broadcast events

Scheduled Pinned Locked Moved Solved Troubleshooting
67 Posts 10 Posters 9.6k Views 10 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.
  • M Offline
    MDWEBB @sdetweil
    last edited by Jan 7, 2025, 11:06 AM

    @sdetweil I have tried to apply your fix as mentioned however i am still not getting events to populate in the MMM-CalendarExt3 module.

    I have also uninstalled and reinstalled the module entirely hoping that would help. Below is my config file and the launch window if that is of any assistance.
    Any insight would be greatly appreciated.

    mdwebb@raspberrypi:~/MagicMirror $ npm start
    
    > magicmirror@2.30.0 start
    > npm run start:x11
    
    
    > magicmirror@2.30.0 start:x11
    > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
    
    [2025-01-07 22:00:29.574] [LOG]   Starting MagicMirror: v2.30.0 
    [2025-01-07 22:00:29.602] [LOG]   Loading config ... 
    [2025-01-07 22:00:29.604] [LOG]   config template file not exists, no envsubst 
    [2025-01-07 22:00:30.136] [INFO]  Checking config file /home/mdwebb/MagicMirror/config/config.js ... 
    [2025-01-07 22:00:30.241] [INFO]  Your configuration file doesn't contain syntax errors :) 
    [2025-01-07 22:00:30.242] [INFO]  Checking modules structure configuration ... 
    [2025-01-07 22:00:30.369] [ERROR] This module configuration contains errors:
    {}must have required property 'module' 
    [2025-01-07 22:00:30.372] [WARN]  No module name found for this configuration:
    {} 
    [2025-01-07 22:00:30.373] [WARN]  No module name found for this configuration:
    {} 
    [2025-01-07 22:00:30.374] [WARN]  No module name found for this configuration:
    {} 
    [2025-01-07 22:00:30.374] [WARN]  No module name found for this configuration:
    {} 
    [2025-01-07 22:00:30.375] [LOG]   Loading module helpers ... 
    [2025-01-07 22:00:30.382] [LOG]   Initializing new module helper ... 
    [2025-01-07 22:00:30.383] [LOG]   Module helper loaded: updatenotification 
    [2025-01-07 22:00:30.384] [LOG]   No helper found for module: clock. 
    [2025-01-07 22:00:30.519] [LOG]   Initializing new module helper ... 
    [2025-01-07 22:00:30.520] [LOG]   Module helper loaded: calendar 
    [2025-01-07 22:00:30.521] [LOG]   No helper found for module: MMM-CalendarExt3. 
    [2025-01-07 22:00:30.728] [LOG]   Initializing new module helper ... 
    [2025-01-07 22:00:30.729] [LOG]   Module helper loaded: MMM-ImagesPhotos 
    [2025-01-07 22:00:30.745] [LOG]   Initializing new module helper ... 
    [2025-01-07 22:00:30.745] [LOG]   Module helper loaded: MMM-OpenWeatherMapForecast 
    [2025-01-07 22:00:30.746] [LOG]   All module helpers loaded. 
    [2025-01-07 22:00:30.755] [LOG]   Starting server on port 8080 ...  
    [2025-01-07 22:00:31.931] [LOG]   Server started ... 
    [2025-01-07 22:00:31.933] [LOG]   Connecting socket for: updatenotification 
    [2025-01-07 22:00:31.935] [LOG]   Starting module helper: updatenotification 
    [2025-01-07 22:00:31.936] [LOG]   Connecting socket for: calendar 
    [2025-01-07 22:00:31.937] [LOG]   Starting node helper for: calendar 
    [2025-01-07 22:00:31.938] [LOG]   Connecting socket for: MMM-ImagesPhotos 
    [2025-01-07 22:00:31.939] [LOG]   Starting node helper for: MMM-ImagesPhotos 
    [2025-01-07 22:00:31.940] [LOG]   Connecting socket for: MMM-OpenWeatherMapForecast 
    [2025-01-07 22:00:31.941] [LOG]   Starting node_helper for MMM-OpenWeatherMapForecast 
    [2025-01-07 22:00:31.942] [LOG]   Sockets connected & modules started ... 
    [2025-01-07 22:00:32.295] [LOG]   Launching application. 
    [2025-01-07 22:00:33.385] [INFO]  System information:
    ### SYSTEM:   manufacturer: ; model: ; virtual: false
    ### OS:       platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.6.51+rpt-rpi-v8
    ### VERSIONS: electron: 32.2.7; used node: 20.18.1; installed node: 20.18.1; npm: 10.8.2; pm2: 5.4.3
    ### OTHER:    timeZone: Australia/Melbourne; ELECTRON_ENABLE_GPU: undefined 
    [27507:0107/220033.757928:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.758396:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.758713:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.758828:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.759036:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.759137:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.759325:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.759425:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.759614:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.759757:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.759944:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.760042:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.760230:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.760324:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.761815:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.761940:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.762133:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.762305:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.762519:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.762618:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.762804:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.762901:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.763080:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.763176:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.763360:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.763453:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [27507:0107/220033.763639:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
    [27507:0107/220033.763743:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
    [2025-01-07 22:00:34.946] [LOG]   Create new calendarfetcher for url: https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics - Interval: 3600000 
    [2025-01-07 22:00:35.004] [LOG]   Config based debug=module_4_MMM-ImagesPhotos 
    [2025-01-07 22:00:35.017] [INFO]  updatenotification: Updater Class Loaded! 
    [2025-01-07 22:00:35.018] [INFO]  updatenotification: Checking PM2 using... 
    [2025-01-07 22:00:35.019] [INFO]  updatenotification: [PM2] You are not using pm2 
    [2025-01-07 22:00:35.020] [INFO]  Checking git for module: MMM-CalendarExt3 
    [2025-01-07 22:00:35.061] [INFO]  Checking git for module: MMM-ImagesPhotos 
    [2025-01-07 22:00:35.094] [INFO]  Checking git for module: MMM-OpenWeatherMapForecast 
    [2025-01-07 22:00:35.121] [INFO]  Checking git for module: MagicMirror 
    [2025-01-07 22:00:41.687] [INFO]  Calendar-Fetcher: Broadcasting 948 events from https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics. 
    [2025-01-07 22:00:45.074] [LOG]   Shutting down server... 
    [2025-01-07 22:00:45.075] [LOG]   Stopping module helper: updatenotification 
    [2025-01-07 22:00:45.076] [LOG]   Stopping module helper: calendar 
    [2025-01-07 22:00:45.076] [LOG]   Stopping module helper: MMM-ImagesPhotos 
    [2025-01-07 22:00:45.076] [LOG]   Stopping module helper: MMM-OpenWeatherMapForecast 
    [2025-01-07 22:00:45.077] [LOG]   Node_helpers stopped ... 
    
    
    	*/},
             {
      module: "calendar",
      position: "top_left",
      config: {
        broadcastPastEvents: true, // <= IMPORTANT to see past events
        calendars: [
          {
            url: "https://calendar.google.com/calendar/ical/",
            name: "us_holiday", // <= RECOMMENDED to assign name
            color: "red", // <= RECOMMENDED to assign color
            defaultSymbolClassName: "",
          }
          ]
      }
      
    },   {
      module: "MMM-CalendarExt3",
      position: "bottom_bar",
      title: "",
      config: {
        mode: "week",
        instanceId: "basicCalendar",
        locale: 'en-US',
        maxEventLines: 6,
        firstDayOfWeek: 0,
        calendarSet: [],
        weekIndex: 0,
        weeksInView: 4,
        eventHeight: '15px',
        useMarquee: true,
        eventTransformer: (ev)=> {
      if (ev.title.search('DINNER') > -1) ev.symbol	 = ['fluent-color:food-28']
      if (ev.title.search('Arnold') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
      if (ev.title.search('Gus') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
      if (ev.title.search('Dogs') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
      if (ev.title.search('dogs') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
      if (ev.title.search('Marcus') > -1) ev.symbol	 = ['noto:pretzel']
      if (ev.title.search('Pretzel') > -1) ev.symbol	 = ['noto:pretzel']
      if (ev.title.search('Recycle Bin') > -1) ev.symbol	 = ['game-icons:soda-bottle']
      if (ev.title.search('Green Waste bins') > -1) ev.symbol	 = ['streamline-emojis:leaf-fluttering-in-wind']
      if (ev.title.search('Cleaning Day') > -1) ev.symbol	 = ['openmoji:broom']
      if (ev.title.search('Swimming') > -1) ev.symbol	 = ['fxemoji:swimming']
      if (ev.title.search('Phils') > -1) ev.symbol	 = ['twemoji:baby-angel-light-skin-tone']
      if (ev.title.search('Phyllis') > -1) ev.symbol	 = ['twemoji:baby-angel-light-skin-tone']
      if (ev.title.search('Birthday') > -1) ev.symbol	 = ['emojione:birthday-cake']
      if (ev.title.search('birthday') > -1) ev.symbol	 = ['emojione:birthday-cake']
      if (ev.title.search('Hugo') > -1) ev.symbol	 = ['cryptocurrency-color:hight']
      if (ev.title.search('Maggie') > -1) ev.symbol	 = ['cryptocurrency-color:xmy']
      if (ev.title.search('Lucas') > -1) ev.symbol	 = ['openmoji:man-judge-light-skin-tone']
      if (ev.title.search('Hudge') > -1) ev.symbol	 = ['twemoji:gemini']
      if (ev.title.search('Danielle') > -1) ev.symbol	 = ['twemoji:gemini']
      return ev
      },
    
        }
    },
    
      
    
     
    
    
    		{/*
    			module: "weather",
    			position: "top_right",
    			config: {
    				weatherProvider: "openmeteo",
    				type: "current",
    				lat: 40.776676,
    				lon: -73.971321
    			}
    		},
    		{
    			module: "weather",
    			position: "top_right",
    			header: "Weather Forecast",
    			config: {
    				weatherProvider: "openmeteo",
    				type: "forecast",
    				lat: 40.776676,
    				lon: -73.971321
    			*/},
    			{
     module: "MMM-ImagesPhotos",
     position: "top_center",
     config: {
      opacity: 0.9,
      animationSpeed: 1000,
      updateInterval: 5000,
      maxHeight: "500px",
      maxWidth:"500px",
      sequential: false  // process the image list randomly
     }
    },
    		    {
          module: "MMM-OpenWeatherMapForecast",
          header: "Weather",
          position: "top_right",
          classes: "default everyone",
          config: {
            apikey: "cfb4187b9743b212915c5438d685f778",
            latitude: "-38.314560",
            longitude: "146.419373",      
            iconset: "4c",
            concise: false,
            forecastLayout: "table",
            showDailyForecast: true,
            maxDailiesToShow: 5,
            showHourlyForecast: false,
            showWind: false
            
          }
        
    },
    		{/*
    			module: "newsfeed",
    			position: "bottom_bar",
    			config: {
    				feeds: [
    					{
    						title: "New York Times",
    						url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
    					}
    				],
    				showSourceTitle: true,
    				showPublishDate: true,
    				broadcastNewsFeeds: true,
    				broadcastNewsUpdates: true
    			}
    		*/},
    	]
    };
    
    S 1 Reply Last reply Jan 7, 2025, 11:54 AM Reply Quote 0
    • S Away
      sdetweil @MDWEBB
      last edited by sdetweil Jan 7, 2025, 11:54 AM Jan 7, 2025, 11:54 AM

      @MDWEBB ok

      two things

      if you comment out a module in config. js with block comment markrrs /* */ then must get the opening and closing braces too

      a better way is just to add

      disabled: true,
      

      after the module:… line
      chsnge back to false to re-enable the module

      second

      can you show me the output of

      cd ~/MagicMirror 
      git branch
      

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      M 1 Reply Last reply Jan 7, 2025, 8:34 PM Reply Quote 1
      • M Offline
        MDWEBB @sdetweil
        last edited by Jan 7, 2025, 8:34 PM

        @sdetweil thanks for the repy, i will make the changes to the commenting out the modules using your advice. output for git branch below

        mdwebb@raspberrypi:~ $ cd ~/MagicMirror 
        git branch
          _fix_clipping
          develop
        * master
        
        
        S 2 Replies Last reply Jan 7, 2025, 9:02 PM Reply Quote 0
        • S Away
          sdetweil @MDWEBB
          last edited by Jan 7, 2025, 9:02 PM

          @MDWEBB said in Version 2.30.0 Calendar fix for clipping broadcast events:

          _fix_clipping

          you need to be on _fix_clipping
          do

          git switch _fix_clipping
          

          if you get package-lock.json would be overwritten
          do

          rm package-lock.json
          

          the do the switch again
          and then

          cd ~/MagicMirror
          npm run install-mm
          

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          B M 2 Replies Last reply Jan 7, 2025, 11:31 PM Reply Quote 1
          • B Offline
            bruces2 @sdetweil
            last edited by Jan 7, 2025, 11:31 PM

            @sdetweil

            update worked for me…

            1 Reply Last reply Reply Quote 1
            • M Offline
              MDWEBB @sdetweil
              last edited by sdetweil Jan 8, 2025, 5:03 PM Jan 8, 2025, 9:00 AM

              @sdetweil Hi Sam,
              Performed checks and changes as requested ensured i was on _fix_clipping then ran the install and still am not getting the events data. See log of each step below. Also included updated config file just in case. Sorry to pester just really like the module.

              mdwebb@raspberrypi:~/MagicMirror $ git switch _fix_clipping
              M	css/main.css
              Already on '_fix_clipping'
              mdwebb@raspberrypi:~/MagicMirror $ cd ~/MagicMirror
              npm run install-mm
              
              > magicmirror@2.31.0-develop install-mm
              > npm install --no-audit --no-fund --no-update-notifier --only=prod --omit=dev
              
              
              > magicmirror@2.31.0-develop postinstall
              > npm run install-vendor && npm run install-fonts && echo "MagicMirror² installation finished successfully! 
              > "
              
              
              > magicmirror@2.31.0-develop install-vendor
              > echo "Installing vendor files ...
              > " && cd vendor && npm install --loglevel=error --no-audit --no-fund --no-update-notifier
              
              Installing vendor files ...
              
              
              up to date in 1s
              
              > magicmirror@2.31.0-develop install-fonts
              > echo "Installing fonts ...
              > " && cd fonts && npm install --loglevel=error --no-audit --no-fund --no-update-notifier
              
              Installing fonts ...
              
              
              up to date in 1s
              MagicMirror² installation finished successfully! 
              
              
              > magicmirror@2.31.0-develop prepare
              > [ -f node_modules/.bin/husky ] && husky || echo no husky installed.
              
              no husky installed.
              
              up to date in 9s
              

              mdwebb@raspberrypi:~/MagicMirror $ npm start

              > magicmirror@2.31.0-develop start
              > npm run start:x11
              
              
              > magicmirror@2.31.0-develop start:x11
              > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
              
              [2025-01-08 19:56:04.602] [LOG]   Starting MagicMirror: v2.31.0-develop 
              [2025-01-08 19:56:04.630] [LOG]   Loading config ... 
              [2025-01-08 19:56:04.632] [LOG]   config template file not exists, no envsubst 
              [2025-01-08 19:56:05.150] [INFO]  Checking config file /home/mdwebb/MagicMirror/config/config.js ... 
              [2025-01-08 19:56:05.263] [INFO]  Your configuration file doesn't contain syntax errors :) 
              [2025-01-08 19:56:05.264] [INFO]  Checking modules structure configuration ... 
              [2025-01-08 19:56:05.380] [ERROR] This module configuration contains errors:
              {}must have required property 'module' 
              [2025-01-08 19:56:05.382] [WARN]  No module name found for this configuration:
              {} 
              [2025-01-08 19:56:05.383] [WARN]  No module name found for this configuration:
              {} 
              [2025-01-08 19:56:05.384] [LOG]   Loading module helpers ... 
              [2025-01-08 19:56:05.391] [LOG]   Initializing new module helper ... 
              [2025-01-08 19:56:05.392] [LOG]   Module helper loaded: updatenotification 
              [2025-01-08 19:56:05.393] [LOG]   No helper found for module: clock. 
              [2025-01-08 19:56:05.527] [LOG]   Initializing new module helper ... 
              [2025-01-08 19:56:05.527] [LOG]   Module helper loaded: calendar 
              [2025-01-08 19:56:05.529] [LOG]   No helper found for module: MMM-CalendarExt3. 
              [2025-01-08 19:56:05.726] [LOG]   Initializing new module helper ... 
              [2025-01-08 19:56:05.727] [LOG]   Module helper loaded: MMM-ImagesPhotos 
              [2025-01-08 19:56:05.743] [LOG]   Initializing new module helper ... 
              [2025-01-08 19:56:05.744] [LOG]   Module helper loaded: MMM-OpenWeatherMapForecast 
              [2025-01-08 19:56:05.744] [LOG]   All module helpers loaded. 
              [2025-01-08 19:56:05.754] [LOG]   Starting server on port 8080 ...  
              [2025-01-08 19:56:06.763] [LOG]   Server started ... 
              [2025-01-08 19:56:06.764] [LOG]   Connecting socket for: updatenotification 
              [2025-01-08 19:56:06.766] [LOG]   Starting module helper: updatenotification 
              [2025-01-08 19:56:06.767] [LOG]   Connecting socket for: calendar 
              [2025-01-08 19:56:06.768] [LOG]   Starting node helper for: calendar 
              [2025-01-08 19:56:06.769] [LOG]   Connecting socket for: MMM-ImagesPhotos 
              [2025-01-08 19:56:06.771] [LOG]   Starting node helper for: MMM-ImagesPhotos 
              [2025-01-08 19:56:06.772] [LOG]   Connecting socket for: MMM-OpenWeatherMapForecast 
              [2025-01-08 19:56:06.777] [LOG]   Starting node_helper for MMM-OpenWeatherMapForecast 
              [2025-01-08 19:56:06.778] [LOG]   Sockets connected & modules started ... 
              [2025-01-08 19:56:07.134] [LOG]   Launching application. 
              [2025-01-08 19:56:08.242] [INFO]  System information:
              ### SYSTEM:   manufacturer: ; model: ; virtual: false
              ### OS:       platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.6.51+rpt-rpi-v8
              ### VERSIONS: electron: 32.2.7; used node: 20.18.1; installed node: 20.18.1; npm: 10.8.2; pm2: 5.4.3
              ### OTHER:    timeZone: Australia/Melbourne; ELECTRON_ENABLE_GPU: undefined 
              [2957:0108/195608.659832:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.660229:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.660540:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.660650:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.660812:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.660910:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.661069:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.661161:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.661311:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.661411:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.661563:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.661654:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.661802:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.661894:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.663097:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.663239:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.663417:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.663539:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.663700:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.663793:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.663943:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.664034:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.664181:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.664271:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.664418:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.664510:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2957:0108/195608.664658:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
              [2957:0108/195608.664748:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
              [2025-01-08 19:56:09.808] [LOG]   Create new calendarfetcher for url: https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics - Interval: 3600000 
              [2025-01-08 19:56:09.886] [LOG]   Config based debug=module_6_MMM-ImagesPhotos 
              [2025-01-08 19:56:09.894] [INFO]  updatenotification: Updater Class Loaded! 
              [2025-01-08 19:56:09.895] [INFO]  updatenotification: Checking PM2 using... 
              [2025-01-08 19:56:09.895] [INFO]  updatenotification: [PM2] You are not using pm2 
              [2025-01-08 19:56:09.896] [INFO]  Checking git for module: MMM-CalendarExt3 
              [2025-01-08 19:56:09.919] [INFO]  Checking git for module: MMM-ImagesPhotos 
              [2025-01-08 19:56:09.939] [INFO]  Checking git for module: MMM-OpenWeatherMapForecast 
              [2025-01-08 19:56:09.970] [INFO]  Checking git for module: MagicMirror 
              [2025-01-08 19:56:16.687] [INFO]  Calendar-Fetcher: Broadcasting 951 events from https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics. 
              [2025-01-08 19:56:24.651] [LOG]   Shutting down server... 
              [2025-01-08 19:56:24.653] [LOG]   Stopping module helper: updatenotification 
              [2025-01-08 19:56:24.656] [LOG]   Stopping module helper: calendar 
              [2025-01-08 19:56:24.657] [LOG]   Stopping module helper: MMM-ImagesPhotos 
              [2025-01-08 19:56:24.658] [LOG]   Stopping module helper: MMM-OpenWeatherMapForecast 
              [2025-01-08 19:56:24.659] [LOG]   Node_helpers stopped ... 
              
              let config = {
              	address: "localhost",	// 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"],	// 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: "en",
              	locale: "en-US",
              	logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
              	timeFormat: 24,
              	units: "metric",
              
              	modules: [
              		{/*
              			module: "alert",
              		*/},
              		{
              			module: "updatenotification",
              			position: "top_bar"
              		},
              		{
              			module: "clock",
              			position: "top_left"
              		},
              		{/*
              			module: "calendar",
              			header: "Webb's",
              			//position: "top_left",
              			config: {
              				calendars: [
              					{
              						fetchInterval: 7 * 24 * 60 * 60 * 1000,
              						symbol: "calendar-check",
              						url: "https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/public/basic.ics"
              						     
              					}
              				]
              			}
              		*/},
                       {
                module: "calendar",
                position: "top_left",
                config: {
                  broadcastPastEvents: true, // <= IMPORTANT to see past events
                  calendars: [
                    {
                      url: "https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics",
                      name: "us_holiday", // <= RECOMMENDED to assign name
                      color: "red", // <= RECOMMENDED to assign color
                      defaultSymbolClassName: "",
                    }
                    ]
                }
                
              },   {
                module: "MMM-CalendarExt3",
                position: "bottom_bar",
                title: "",
                config: {
                  mode: "week",
                  instanceId: "basicCalendar",
                  locale: 'en-US',
                  maxEventLines: 6,
                  firstDayOfWeek: 0,
                  calendarSet: [],
                  weekIndex: 0,
                  weeksInView: 4,
                  eventHeight: '15px',
                  useMarquee: true,
                  eventTransformer: (ev)=> {
                if (ev.title.search('DINNER') > -1) ev.symbol	 = ['fluent-color:food-28']
                if (ev.title.search('Arnold') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
                if (ev.title.search('Gus') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
                if (ev.title.search('Dogs') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
                if (ev.title.search('dogs') > -1) ev.symbol	 = ['fluent-emoji-flat:dog']
                if (ev.title.search('Marcus') > -1) ev.symbol	 = ['noto:pretzel']
                if (ev.title.search('Pretzel') > -1) ev.symbol	 = ['noto:pretzel']
                if (ev.title.search('Recycle Bin') > -1) ev.symbol	 = ['game-icons:soda-bottle']
                if (ev.title.search('Green Waste bins') > -1) ev.symbol	 = ['streamline-emojis:leaf-fluttering-in-wind']
                if (ev.title.search('Cleaning Day') > -1) ev.symbol	 = ['openmoji:broom']
                if (ev.title.search('Swimming') > -1) ev.symbol	 = ['fxemoji:swimming']
                if (ev.title.search('Phils') > -1) ev.symbol	 = ['twemoji:baby-angel-light-skin-tone']
                if (ev.title.search('Phyllis') > -1) ev.symbol	 = ['twemoji:baby-angel-light-skin-tone']
                if (ev.title.search('Birthday') > -1) ev.symbol	 = ['emojione:birthday-cake']
                if (ev.title.search('birthday') > -1) ev.symbol	 = ['emojione:birthday-cake']
                if (ev.title.search('Hugo') > -1) ev.symbol	 = ['cryptocurrency-color:hight']
                if (ev.title.search('Maggie') > -1) ev.symbol	 = ['cryptocurrency-color:xmy']
                if (ev.title.search('Lucas') > -1) ev.symbol	 = ['openmoji:man-judge-light-skin-tone']
                if (ev.title.search('Hudge') > -1) ev.symbol	 = ['twemoji:gemini']
                if (ev.title.search('Danielle') > -1) ev.symbol	 = ['twemoji:gemini']
                return ev
                },
              
                  }
              },
              
                
              
               
              
              
              		{
              			module: "weather",
              			disabled: true,
              			position: "top_right",
              			config: {
              				weatherProvider: "openmeteo",
              				type: "current",
              				lat: 40.776676,
              				lon: -73.971321
              			}
              		},
              		{
              			module: "weather",
              			disabled: true,
              			position: "top_right",
              			header: "Weather Forecast",
              			config: {
              				weatherProvider: "openmeteo",
              				type: "forecast",
              				lat: 40.776676,
              				lon: -73.971321
              			}
              		      },
              			{
               module: "MMM-ImagesPhotos",
               position: "top_center",
               config: {
                opacity: 0.9,
                animationSpeed: 1000,
                updateInterval: 5000,
                maxHeight: "500px",
                maxWidth:"500px",
                sequential: false  // process the image list randomly
               }
              },
              		    {
                    module: "MMM-OpenWeatherMapForecast",
                    header: "Weather",
                    position: "top_right",
                    classes: "default everyone",
                    config: {
                      apikey: "cfb4187b9743b212915c5438d685f778",
                      latitude: "-38.314560",
                      longitude: "146.419373",      
                      iconset: "4c",
                      concise: false,
                      forecastLayout: "table",
                      showDailyForecast: true,
                      maxDailiesToShow: 5,
                      showHourlyForecast: false,
                      showWind: false
                      
                    }
                  
              },
              		{
              			module: "newsfeed",
              			disabled: true,
              			position: "bottom_bar",
              			config: {
              				feeds: [
              					{
              						title: "New York Times",
              						url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
              					}
              				],
              				showSourceTitle: true,
              				showPublishDate: true,
              				broadcastNewsFeeds: true,
              				broadcastNewsUpdates: true
              			}
              		},
              	]
              };
              
              S 1 Reply Last reply Jan 8, 2025, 5:05 PM Reply Quote 0
              • D Offline
                djkleric @sdetweil
                last edited by Jan 8, 2025, 4:48 PM

                @sdetweil Thank you, after a few things I was able to get it working. I was not able to get it to work on the rp 3b but was able to get it working on the rp5. Appreciate you.

                1 Reply Last reply Reply Quote 0
                • S Away
                  sdetweil @MDWEBB
                  last edited by Jan 8, 2025, 5:05 PM

                  @MDWEBB said in Version 2.30.0 Calendar fix for clipping broadcast events:

                    {/*
                    	module: "calendar",
                    	header: "Webb's",
                    	//position: "top_left",
                    	config: {
                    		calendars: [
                    			{
                    				fetchInterval: 7 * 24 * 60 * 60 * 1000,
                    				symbol: "calendar-check",
                    				url: "https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/public/basic.ics"
                    				     
                    			}
                    		]
                    	}
                    */},
                  

                  this creates an empty module, why you got the

                  @MDWEBB said in [Version 2\.30\.0 Calendar fix for clipping broadcast events](/post/122771):
                  > {}must have required property 'module' 
                  > [2025-01-08 19:56:05.382] [WARN]  No module name found for this configuration:
                  > {} 
                  > [2025-01-08 19:56:05.383] [WARN]  No module name found for this configuration:
                  > {} 
                  

                  errors

                  what do you mean not working on pi 3?

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  M 1 Reply Last reply Jan 8, 2025, 9:21 PM Reply Quote 0
                  • M Offline
                    MDWEBB @sdetweil
                    last edited by Jan 8, 2025, 9:21 PM

                    @sdetweil thanks removing this module has cleared the error on boot however still not having any lucky with events broadcasting for CalendarExt3

                    /MagicMirror $ npm start
                    
                    > magicmirror@2.31.0-develop start
                    > npm run start:x11
                    
                    
                    > magicmirror@2.31.0-develop start:x11
                    > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
                    
                    [2025-01-09 08:18:52.543] [LOG]   Starting MagicMirror: v2.31.0-develop 
                    [2025-01-09 08:18:52.572] [LOG]   Loading config ... 
                    [2025-01-09 08:18:52.575] [LOG]   config template file not exists, no envsubst 
                    [2025-01-09 08:18:53.097] [INFO]  Checking config file /home/mdwebb/MagicMirror/config/config.js ... 
                    [2025-01-09 08:18:53.206] [INFO]  Your configuration file doesn't contain syntax errors :) 
                    [2025-01-09 08:18:53.208] [INFO]  Checking modules structure configuration ... 
                    [2025-01-09 08:18:53.324] [INFO]  Your modules structure configuration doesn't contain errors :) 
                    [2025-01-09 08:18:53.327] [LOG]   Loading module helpers ... 
                    [2025-01-09 08:18:53.329] [LOG]   No helper found for module: alert. 
                    [2025-01-09 08:18:53.336] [LOG]   Initializing new module helper ... 
                    [2025-01-09 08:18:53.337] [LOG]   Module helper loaded: updatenotification 
                    [2025-01-09 08:18:53.338] [LOG]   No helper found for module: clock. 
                    [2025-01-09 08:18:53.474] [LOG]   Initializing new module helper ... 
                    [2025-01-09 08:18:53.474] [LOG]   Module helper loaded: calendar 
                    [2025-01-09 08:18:53.476] [LOG]   No helper found for module: MMM-CalendarExt3. 
                    [2025-01-09 08:18:53.674] [LOG]   Initializing new module helper ... 
                    [2025-01-09 08:18:53.675] [LOG]   Module helper loaded: MMM-ImagesPhotos 
                    [2025-01-09 08:18:53.693] [LOG]   Initializing new module helper ... 
                    [2025-01-09 08:18:53.694] [LOG]   Module helper loaded: MMM-OpenWeatherMapForecast 
                    [2025-01-09 08:18:53.694] [LOG]   All module helpers loaded. 
                    [2025-01-09 08:18:53.704] [LOG]   Starting server on port 8080 ...  
                    [2025-01-09 08:18:54.652] [LOG]   Server started ... 
                    [2025-01-09 08:18:54.653] [LOG]   Connecting socket for: updatenotification 
                    [2025-01-09 08:18:54.655] [LOG]   Starting module helper: updatenotification 
                    [2025-01-09 08:18:54.656] [LOG]   Connecting socket for: calendar 
                    [2025-01-09 08:18:54.657] [LOG]   Starting node helper for: calendar 
                    [2025-01-09 08:18:54.658] [LOG]   Connecting socket for: MMM-ImagesPhotos 
                    [2025-01-09 08:18:54.659] [LOG]   Starting node helper for: MMM-ImagesPhotos 
                    [2025-01-09 08:18:54.660] [LOG]   Connecting socket for: MMM-OpenWeatherMapForecast 
                    [2025-01-09 08:18:54.661] [LOG]   Starting node_helper for MMM-OpenWeatherMapForecast 
                    [2025-01-09 08:18:54.662] [LOG]   Sockets connected & modules started ... 
                    [2025-01-09 08:18:55.059] [LOG]   Launching application. 
                    [2025-01-09 08:18:56.218] [INFO]  System information:
                    ### SYSTEM:   manufacturer: ; model: ; virtual: false
                    ### OS:       platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.6.51+rpt-rpi-v8
                    ### VERSIONS: electron: 32.2.7; used node: 20.18.1; installed node: 20.18.1; npm: 10.8.2; pm2: 5.4.3
                    ### OTHER:    timeZone: Australia/Melbourne; ELECTRON_ENABLE_GPU: undefined 
                    [5307:0109/081856.487945:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.488320:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.488591:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.488693:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.488880:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.488963:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.489136:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.489218:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.489384:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.489472:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.489641:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.489720:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.489884:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.489962:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.491709:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.491833:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.492011:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.492121:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.492294:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.492377:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.492540:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.492619:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.492789:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.492880:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.493063:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.493142:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [5307:0109/081856.493306:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                    [5307:0109/081856.493385:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                    [2025-01-09 08:18:57.750] [LOG]   Create new calendarfetcher for url: https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics - Interval: 3600000 
                    [2025-01-09 08:18:57.799] [LOG]   Config based debug=module_7_MMM-ImagesPhotos 
                    [2025-01-09 08:18:57.807] [INFO]  updatenotification: Updater Class Loaded! 
                    [2025-01-09 08:18:57.808] [INFO]  updatenotification: Checking PM2 using... 
                    [2025-01-09 08:18:57.809] [INFO]  updatenotification: [PM2] You are not using pm2 
                    [2025-01-09 08:18:57.811] [INFO]  Checking git for module: MMM-CalendarExt3 
                    [2025-01-09 08:18:57.834] [INFO]  Checking git for module: MMM-ImagesPhotos 
                    [2025-01-09 08:18:57.857] [INFO]  Checking git for module: MMM-OpenWeatherMapForecast 
                    [2025-01-09 08:18:57.889] [INFO]  Checking git for module: MagicMirror 
                    [2025-01-09 08:19:03.894] [INFO]  Calendar-Fetcher: Broadcasting 953 events from https://calendar.google.com/calendar/ical/4efbedad2784375c01feb3efdfc3af1c952bc6855f277cc0ff676a776cb246a2%40group.calendar.google.com/private-1a35a8867b2c1f528e0f8ac9f9fa15ab/basic.ics. 
                    [2025-01-09 08:19:15.083] [LOG]   Shutting down server... 
                    [2025-01-09 08:19:15.084] [LOG]   Stopping module helper: updatenotification 
                    [2025-01-09 08:19:15.085] [LOG]   Stopping module helper: calendar 
                    [2025-01-09 08:19:15.086] [LOG]   Stopping module helper: MMM-ImagesPhotos 
                    [2025-01-09 08:19:15.087] [LOG]   Stopping module helper: MMM-OpenWeatherMapForecast 
                    [2025-01-09 08:19:15.090] [LOG]   Node_helpers stopped ...
                    
                    S 1 Reply Last reply Jan 8, 2025, 9:24 PM Reply Quote 0
                    • S Away
                      sdetweil @MDWEBB
                      last edited by Jan 8, 2025, 9:24 PM

                      @MDWEBB says it broadcast over 900 events

                      there is an Ext3 function for seeing all the events, maybe check there to see if its called, dont see why not

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      M 1 Reply Last reply Jan 9, 2025, 8:53 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 7
                      • 2 / 7
                      2 / 7
                      • First post
                        12/67
                        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