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.

    MagicMirror weather not loading

    Scheduled Pinned Locked Moved Solved Troubleshooting
    10 Posts 3 Posters 2.6k Views 3 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.
    • H Offline
      henryspr1
      last edited by sdetweil

      Hello,

      I recently flattened and rebuilt my MagicMirror to run raspberry PiOS Bookworm 64-bit running on a Pi3, not quite sure what I ran before, but I hadn’t rebuilt the OS in over a year and everything seemed to work just fine.

      I was able to load my previous config.js and also restored my compliments file. Everything seems ok except the weather is stuck on loading weather, and loading forecast.

      Have they deprecated weather or do I need to change my providers?

      Here is my config, with obsfuscated API key.

      /* MagicMirror² Config Sample
       *
       * By Michael Teeuw https://michaelteeuw.nl
       * MIT Licensed.
       *
       * For more information on how you can configure this file
       * see https://docs.magicmirror.builders/configuration/introduction.html
       * and https://docs.magicmirror.builders/modules/configuration.html
       *
       * You can use environment variables using a `config.js.template` file instead of `config.js`
       * which will be converted to `config.js` while starting. For more information
       * see https://docs.magicmirror.builders/configuration/introduction.html#enviromnent-variables
       */
      let config = {
      	address: "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: 12,
      	units: "Imperial",
      
      	modules: [
      		{
      			module: "alert",
      		},
      		{
      			module: "updatenotification",
      			position: "top_bar"
      		},
      		{
      			module: "clock",
      			position: "top_left"
      		},
      		{
      			module: "calendar",
      			header: "US Holidays",
      			position: "top_left",
      			config: {
      				calendars: [
      					{
      						fetchInterval: 7 * 24 * 60 * 60 * 1000,
      						symbol: "calendar-check",
      						url: "https://ics.calendarlabs.com/76/mm3137/US_Holidays.ics"
      					}
      				]
      			}
      		},
      		{
      			module: "compliments",
      			position: "lower_third"
      		},
      		{
      			module: "weather",
      			position: "top_right",
      			config: {
      				weatherProvider: "openweathermap",
      				type: "current",
      				location: "Bothell",
      				locationID: "5787829",  //ID from http://www.openweathermap.org/help/city_list.txt
      				appid: "a0NUMBERSANDLETTERS32add4ab0"
      			}
      		},
      		{
      			module: "weather",
      			position: "top_right",
      			header: "Weather Forecast",
      			config: {
      				weatherProvider: "openweathermap",
      				type: "forecast",
      				location: "Bothell",
      				locationID: "5787829",  //ID from http://www.openweathermap.org/help/city_list.txt
      				appid: "7NUMBERSANDLETTERSb87a611823724"
      			}
      		},
      		{
      			module: "newsfeed",
      			position: "bottom_left",
      			config: {
      				feeds: [
      					{
      						title: "Seattle Times",
      						url: "https://www.seattletimes.com/seattle-news/feed/"
      					}
      				],
      				showSourceTitle: true,
      				showPublishDate: true,
      				broadcastNewsFeeds: true,
      				broadcastNewsUpdates: true
      			}
      		},
      	]
      };
      
      /*************** DO NOT EDIT THE LINE BELOW ***************/
      if (typeof module !== "undefined") { module.exports = config; }
      
      S 1 Reply Last reply Reply Quote 0
      • E Offline
        ebig @henryspr1
        last edited by

        @henryspr1 I figured it out, the weather module changed the variable appid to apiKey, if you update those in the config.js it should work.

        I noticed the 401 error in the console had the APPID in the GET request blank which I found weird, and when I manually entered the GET url into my browser and added my api key manually I was able to retrieve the weather fine. After going through the documentation I noticed the section talking about the api key was actually using the variable apiKey and not appid which I had in my config file. Changing that fixed the issue for me, hope it helps you.

        S H 3 Replies Last reply Reply Quote 0
        • S Offline
          sdetweil @henryspr1
          last edited by

          @henryspr1 weather is all done in browser, so open the developers window ctrl-shift-i
          and select the console tab and put a unique part of module name in the filter field

          probably see a 401 error…

          when did u get your API key?

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          H 1 Reply Last reply Reply Quote 0
          • H Offline
            henryspr1 @sdetweil
            last edited by

            @sdetweil Yep a ton of 401 not authorized. I assume I need a new API key? It is old like at least 3 years.

            This was working just fine a month or so ago.

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @henryspr1
              last edited by

              @henryspr1 said in MagicMirror weather not loading:

              @sdetweil Yep a ton of 401 not authorized. I assume I need a new API key? It is old like at least 3 years.

              This was working just fine a month or so ago.

              weather has a property for apikey version

              I think 2.5 is the default, may be 3.0
              also if using the onecall uri I think.

              the new 3.0 API needs a credit card , like Google apis.

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              H 1 Reply Last reply Reply Quote 0
              • H Offline
                henryspr1 @sdetweil
                last edited by

                @sdetweil I tried with two new API keys and same issue. 401 not authorized. I have reached out to openweathermap.org if they could lend some insight. I am using free keys but if the versioning changed I can see that being the problem.

                Thanks for your help, if it is something on their end I will let you know.

                E 2 Replies Last reply Reply Quote 0
                • E Offline
                  ebig @henryspr1
                  last edited by

                  Did you ever figure out the issue? I’m having the same problem.

                  1 Reply Last reply Reply Quote 0
                  • E Offline
                    ebig @henryspr1
                    last edited by

                    @henryspr1 I figured it out, the weather module changed the variable appid to apiKey, if you update those in the config.js it should work.

                    I noticed the 401 error in the console had the APPID in the GET request blank which I found weird, and when I manually entered the GET url into my browser and added my api key manually I was able to retrieve the weather fine. After going through the documentation I noticed the section talking about the api key was actually using the variable apiKey and not appid which I had in my config file. Changing that fixed the issue for me, hope it helps you.

                    S H 3 Replies Last reply Reply Quote 0
                    • S Offline
                      sdetweil @ebig
                      last edited by

                      @ebig yes, when the current weather and weather forecast we’re replaced by the commo weather module a year ago the parts were har.onized across the uses.

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • H Offline
                        henryspr1 @ebig
                        last edited by

                        @ebig Thanks! It works! Are you flippin’ kidding me, lol? Really that was it? Changed it then boom, weather! Thanks a ton!

                        Reminds me of spending a couple hours on a powershell script, stepped through multiple parts, and they all seemed right and I was like nearing my patience level, then my co-worker glanced at it for 30 secs and was like . . forgot an & . . . gahhhhhh!

                        :)

                        1 Reply Last reply Reply Quote 0
                        • H Offline
                          henryspr1 @ebig
                          last edited by sdetweil

                          This post is deleted!
                          1 Reply Last reply Reply Quote 0
                          • 1 / 1
                          • 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