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

Internet Monitor

Scheduled Pinned Locked Moved Utilities
108 Posts 27 Posters 114.8k Views 30 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.
  • P Offline
    pjkoeleman @ronny3050
    last edited by Mar 16, 2017, 9:01 PM

    @ronny3050 Never to old to learn.

    1 Reply Last reply Reply Quote 2
    • M Offline
      mg_switch
      last edited by Apr 19, 2019, 10:39 PM

      Thanks for the great module. I can see that it will be a fine product once I have one little issue sorted.

      The verbose display shows that the speed test is always referencing one specific server in China (not in my home country) and as such the meter readings are showing at 1/10th of what a manual speed test shows (using ookla to a local server in another browser).

      Is there any way to specify the server in use or at least limit the servers to a local list or “geofence”?

      1 Reply Last reply Reply Quote 0
      • B Offline
        bhepler Module Developer
        last edited by bhepler Apr 20, 2019, 3:08 AM Apr 20, 2019, 2:50 AM

        According to the documentation, it pulls down a list of servers and their associated ping times. The default is to pick the server with the smallest ping. This is quite curious.

        It does look like you can pass in a serverID and have it use that server. You can get the ID of a specific server here. I think with a little editing of the node_helper.js file, you can pass in an object that specifies a particular server.

        For bonus points, make the server ID and/or server URL a parameter that you can specify in the config.js entry for the module. Test it and then submit a pull request to the module developer.

        Huh. I just tried this and it’s picking servers in Norway, which is very much not nearby.

        ETA: Looking at it, it doesn’t seem to be terribly hard. The Start() function sends the socket notification that gets it all going, passing in the config argument. The only option passed in is maxTime. If you can figure out the format that speedtest wants, you could pretty easily pass in whatever you wanted to extract from the config object (payload in the node_helper.js).

        I may play with this later myself, just to learn some things.

        1 Reply Last reply Reply Quote 0
        • B Offline
          bhepler Module Developer
          last edited by Apr 21, 2019, 5:48 PM

          Well. That was frustrating. I’ll spare you the details, but I modified the module and submitted a PR. Hopefully @ronny3050 will fix my amateurish code and accept it.

          Anyhow, if you want to try it before then, you can clone from my fork of ronny3050’s module. Remember to run npm install.

          M 1 Reply Last reply Apr 30, 2019, 4:01 PM Reply Quote 0
          • N Offline
            nickthebeer
            last edited by Apr 22, 2019, 11:04 AM

            Hi, only just discovered this module and it seems like a great idea however I cannot get the wifi symbol to appear.

            Here’s my config for the module:

            module: “internet-monitor”,
            position: “bottom_center”,
            header: “Internet Monitor”,
            config: {
            type: " ",
            maxTime: “20000”,
            updateInterval: “0”,
            verbose: “false”,
            displayStrength: “true”,
            displaySpeed: “false”,
            strengthIconSize: “80”,
            maxGaugeScale: “100”,
            wifiSymbol: {
            size: “50”,
            fullColor: “3afc25”,
            almostColour: “#ffff0c”,
            halfColor: “#ff8c00”,
            noneColor: “#ff1111”
            },
            }
            }

            Am I being thick and have missed something?

            Additionally is the wifi symbol a measure of internet speed on the pi or wifi strength to my AP?

            B 1 Reply Last reply Apr 23, 2019, 1:27 AM Reply Quote 0
            • B Offline
              bhepler Module Developer @nickthebeer
              last edited by bhepler Apr 30, 2019, 8:44 PM Apr 23, 2019, 1:27 AM

              @nickthebeer - The WiFi symbol is actually a ping test to the testing server. Ping times > 150ms are marked as no signal, ping < 70ms is full strength.

              Looking at the speedtest documentation, the API returns a “list of closest servers” after testing. Who knows how long that takes, especially if you’re using the original code without my updates. The node_helper.js then pulls the closest server and does a ping test.

              I think this is just going to be a patience thing. Watch the console log for the line: ping. That’s the notification from the node_helper.js that the ping is complete. If the Wifi symbol doesn’t appear after that, come back and we’ll look at it.

              N 1 Reply Last reply May 7, 2019, 9:15 PM Reply Quote 0
              • M Offline
                mg_switch @bhepler
                last edited by mg_switch Apr 30, 2019, 4:03 PM Apr 30, 2019, 4:01 PM

                @bhepler Confirming…100% working as suggested. I have included the local speedtest server to the config (serverID), the verbose now displays this server…and the speed gauges show the expected speeds, DLs and ULs. Nice work.

                1 Reply Last reply Reply Quote 0
                • N Offline
                  nickthebeer @bhepler
                  last edited by nickthebeer May 7, 2019, 9:19 PM May 7, 2019, 9:15 PM

                  @bhepler ok, I’m seriously missing something here…I removed the internet monitor folder and did a git pull from your page (https://github.com/BrianHepler/internet-monitor) and also cleared down my config.js to a simple config but it just doesn’t look right (see attached image) I’m missing the wifi symbol and it defaults to a speedtest server in Norway and not the one specified in the file (12667 in the US).

                  Please help, it’s slowly driving me insane.

                  /* Magic Mirror Config Sample
                   *
                   * By Michael Teeuw http://michaelteeuw.nl
                   * MIT Licensed.
                   *
                   * For more information how you can configurate this file
                   * See https://github.com/MichMich/MagicMirror#configuration
                   *
                   */
                  
                  var 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, is "localhost"
                          port: 8080,
                          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"],
                  
                          language: "en",
                          timeFormat: 24,
                          units: "metric",
                  
                  modules: [
                          {
                              module: 'internet-monitor',
                              position: 'top_center',
                              header: 'Internet Monitor',
                              config:{
                                  type: '',
                                  maxTime: '20000',
                                  updateInterval: '0',
                                  verbose: 'true',
                                  serverID: '12667',
                                  displayStrength: 'true',
                                  displaySpeed: 'true',
                                  strengthIconSize: '80',
                                  maxGaugeScale: '100',
                                  wifiSymbol:{
                                      size: '50',
                                      fullColor: '#3afc25',
                                      almostColor: '#ffff0c',
                                      halfColor: '#ff8c00',
                                      noneColor: '#ff1111'
                                  },
                              },
                          }
                  ]
                  };
                  
                  /*************** DO NOT EDIT THE LINE BELOW ***************/
                  if (typeof module !== "undefined") {module.exports = config;}
                  

                  0_1557263946936_IMG_20190507_215401.jpg

                  B 1 Reply Last reply Jul 4, 2019, 6:52 PM Reply Quote 0
                  • B Offline
                    bhepler Module Developer @nickthebeer
                    last edited by bhepler Jul 4, 2019, 6:58 PM Jul 4, 2019, 6:52 PM

                    @nickthebeer - Dude I am so sorry! I just saw your post now. I don’t know why I didn’t get a notification. Let’s get you fixed up.

                    The problem is in the capitalization of the ServerId variable. You have Id in all caps. It’s uppercase “I” and lowercase “d”. Copy & paste this:

                    {
                                module: 'internet-monitor',
                                position: 'top_center',
                                header: 'Internet Monitor',
                                config:{
                                    type: '',
                                    maxTime: '20000',
                                    updateInterval: '0',
                                    verbose: 'true',
                                    serverId: '12667',
                                    displayStrength: 'true',
                                    displaySpeed: 'true',
                                    strengthIconSize: '80',
                                    maxGaugeScale: '100',
                                    wifiSymbol:{
                                        size: '50',
                                        fullColor: '#3afc25',
                                        almostColor: '#ffff0c',
                                        halfColor: '#ff8c00',
                                        noneColor: '#ff1111'
                                    },
                         }
                    },
                    
                    1 Reply Last reply Reply Quote 0
                    • chaseb1357C Offline
                      chaseb1357
                      last edited by Oct 19, 2019, 5:13 PM

                      Yeah I am not able to get the plain WiFi symbol to appear as well. The heading size responds to the new sizing of where a symbol should be, but no symbol appears.

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 6
                      • 7
                      • 8
                      • 9
                      • 10
                      • 11
                      • 8 / 11
                      • 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