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 24.1k 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.
    • S Offline
      sdetweil @djkleric
      last edited by

      @djkleric erase
      rm package-lock.sjon

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      D 1 Reply Last reply Reply Quote 1
      • M Offline
        MDWEBB @sdetweil
        last edited by

        @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 Reply Quote 0
        • S Offline
          sdetweil @MDWEBB
          last edited by sdetweil

          @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 Reply Quote 1
          • M Offline
            MDWEBB @sdetweil
            last edited by

            @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 Reply Quote 0
            • S Offline
              sdetweil @MDWEBB
              last edited by

              @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 Reply Quote 1
              • B Offline
                bruces2 @sdetweil
                last edited by

                @sdetweil

                update worked for me…

                1 Reply Last reply Reply Quote 1
                • M Offline
                  MDWEBB @sdetweil
                  last edited by sdetweil

                  @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 Reply Quote 0
                  • D Offline
                    djkleric @sdetweil
                    last edited by

                    @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 Offline
                      sdetweil @MDWEBB
                      last edited by

                      @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 Reply Quote 0
                      • M Offline
                        MDWEBB @sdetweil
                        last edited by

                        @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 Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 7
                        • 7 / 7
                        • 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