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.

    MMM-NetworkScanner

    Scheduled Pinned Locked Moved Utilities
    networkscannerstatusmac address
    117 Posts 32 Posters 233.2k Views 33 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.
    • K Offline
      kclemen @ianperrin
      last edited by kclemen

      @ianperrin I tough the problem was solved by what I stated in the edit of the previous post. But my mobile just went to offline on the mirror, even though wifi is still on…

      {
      module: ‘MMM-NetworkScanner’,
      header: ‘Aanwezig in huis’,
      position: ‘top_left’,
      config: {
      devices: [
      { macAddress: “1xxx”, name: “mom”, icon: “mobile”},
      { macAddress: “xxx”, name: “dad”, icon: “mobile”},
      /**** { macAddress: “xxxc”, name: “Laptop”, icon: “laptop”}, /
      /
      { macAddress: “xxx”, name: “Mobile”, icon: “mobile”}, ****/
      ],
      showUnknown: false,
      showOffline: true,
      keepAlive: 300,
      updateInterval: 60
      }
      },

      1 Reply Last reply Reply Quote 0
      • B Offline
        BenNewsome
        last edited by BenNewsome

        Feature that turns off the mirror when you leave the house.

        I was looking at this module and your other module MMM-ModuleScheduler and was looking for something to turn my monitor off when I am not home.
        Your other module already lets me turn it off the display while I am asleep when combined with MMM-Remote-Control, and so I looked into doing the same for when I am out of the house (When my phone is not connected to my LAN).

        With a little help looking at MMM-ping I also managed to integrate IP address lockups and hostnames, so that if you have the option of IP addresses you can use them, and if not you can use MAC addresses, as I found IP addresses were more stable.

        I am just about to send a pull request, but for now I have the forked version here. I am very new to node.js still and so any feedback from anyone willing to try this out would be appreciated.

        I 1 Reply Last reply Reply Quote 0
        • S Offline
          Speedy-one
          last edited by

          Is it possible to add some color to the icons?

          1 Reply Last reply Reply Quote 0
          • outjetO Offline
            outjet
            last edited by

            I do love this module! I have one bizarre problem. Whenever my “Kirsten” device is not home, the module will not get past “Loading”. As long as she is home, the module loads OK. If I take her out of the list, it also loads OK.

            		   {
            		        module: 'MMM-NetworkScanner',
            		        position: 'bottom_right', 
            		        config: {
                        devices: [
                    	      { macAddress: "cc:29:f5:36:ca:fe", name:   "Kirsten", icon: "female"},
            	              { macAddress: "c4:9a:02:8c:50:72", name:   "Robert" , icon:   "male"},
                            ],
                        showUnknown: false,
                        showOffline: true,
                        keepAlive: 75,
                        updateInterval: 5
                    }               
            
            

            Any thoughts? Thanks!

            B 1 Reply Last reply Reply Quote 0
            • B Offline
              BenNewsome @outjet
              last edited by

              @outjet I have a couple of thoughts. It looks like your update interval is very short. If you increased this to at least 10 seconds it might do something. It takes my Pi3 ~3 seconds to do the arp-scan command so if you are running a Pi2 it might be taking too long.

              If that does nothing then I would suggest visiting your pi from a different machine. If you open chrome and go to your mirror ip port 8080 e.g. 19.168.3.14:8080 and then hit f12 the developer tools should show up. If you then go to the Console tab and reload the page, some errors should show up, and if you paste them here it might be useful.

              If no errors show up then try running the module with the command node serveronly instead of pm2 or npm. This will throw probably more errors which could help.

              OR

              If you have static IP addresses you could try my fork here

              outjetO 1 Reply Last reply Reply Quote 0
              • outjetO Offline
                outjet @BenNewsome
                last edited by

                @BenNewsome Thank you for the reply! I increased the interval as you suggested, and reverted a change I forgot I made to the .js, which got things going.

                I remembered I altered the code to show: “Robert - Last seen 23 minutes ago”.
                alt text

                This has been working really nicely except when one of the devices is not online at module load time … My lack of JS skills catching up with me.

                //Name 
                deviceItem.innerHTML += (device.name ? device.name + ". Last seen " + device.lastSeen.fromNow(): device.macAddress ) ;
                
                

                I reverted to the original code and all is back to working, I’ll need to work on troubleshooting the “last seen” functionality to keep working if a device has not yet been seen. (if you see anything obvious, a penny for your thoughts!)

                Thanks again

                strawberry 3.141S I 2 Replies Last reply Reply Quote 0
                • strawberry 3.141S Offline
                  strawberry 3.141 Project Sponsor Module Developer @outjet
                  last edited by

                  @outjet i guess the problem is that you try to access device.lastSeen.fromNow() this will probably result in cannot run method fromNow of undefined

                  Please create a github issue if you need help, so I can keep track

                  1 Reply Last reply Reply Quote 0
                  • I Offline
                    ianperrin @BenNewsome
                    last edited by

                    @BenNewsome Hi Ben - I’m commited elsewhere at the moment so sorry for not getting back to you sooner. Thanks for the pull request - I’ve accepted it and merged it into the module for all to share!

                    "Live as if you were to die tomorrow. Learn as if you were to live forever." - Mahatma Gandhi

                    B 1 Reply Last reply Reply Quote 0
                    • I Offline
                      ianperrin @outjet
                      last edited by

                      @outjet I’ve not been able to spend much time on the Mirror (or this module) recently but I’ve just updated the module to include @BenNewsome’s additional functionality along with a showLastSeen option

                      Can you try updating your module and adding this to your config.js file e.g. showLastSeen: true,

                      "Live as if you were to die tomorrow. Learn as if you were to live forever." - Mahatma Gandhi

                      1 Reply Last reply Reply Quote 1
                      • pugslyP Offline
                        pugsly
                        last edited by

                        This was working great for me until the latest git pull. I am getting the following errors now.

                        mm-0 (err): at Function.Module._resolveFilename (/home/pi/MagicMirror/node_modules/electron-prebuilt/dist/resources/electron.asar/common/reset-search-paths.js:35:12)
                        mm-0 (err): at Function.Module._load (module.js:403:25)
                        mm-0 (err): at Module.require (module.js:483:17)
                        mm-0 (err): at require (internal/module.js:20:19)
                        mm-0 (err): at Object. (/home/pi/MagicMirror/modules/MMM-NetworkScanner/node_helper.js:10:14)
                        mm-0 (err): at Module._compile (module.js:556:32)
                        mm-0 (err): at Object.Module._extensions…js (module.js:565:10)
                        mm-0 (err): at Module.load (module.js:473:32)
                        mm-0 (err): at tryModuleLoad (module.js:432:12)
                        mm-0 (err): { Error: Cannot find module ‘ping’
                        mm-0 (err): at Module._resolveFilename (module.js:455:15)
                        mm-0 (err): at Function.Module._resolveFilename (/home/pi/MagicMirror/node_modules/electron-prebuilt/dist/resources/electron.asar/common/reset-search-paths.js:35:12)
                        mm-0 (err): at Function.Module._load (module.js:403:25)
                        mm-0 (err): at Module.require (module.js:483:17)
                        mm-0 (err): at require (internal/module.js:20:19)
                        mm-0 (err): at Object. (/home/pi/MagicMirror/modules/MMM-NetworkScanner/node_helper.js:10:14)
                        mm-0 (err): at Module._compile (module.js:556:32)
                        mm-0 (err): at Object.Module._extensions…js (module.js:565:10)
                        mm-0 (err): at Module.load (module.js:473:32)
                        mm-0 (err): at tryModuleLoad (module.js:432:12) code: ‘MODULE_NOT_FOUND’ }

                        B 1 Reply Last reply Reply Quote 0
                        • B Offline
                          BenNewsome @ianperrin
                          last edited by

                          @ianperrin No problem, thanks for the great module(s). I hope I accidentally didn’t break anything as I’m pretty new to Node.

                          1 Reply Last reply Reply Quote 0
                          • B Offline
                            BenNewsome @pugsly
                            last edited by

                            @pugsly Sorry thats from my update. Have you done a NPM install inside the module as it has a new dependency?

                            Hopefully this will fix the problem.

                            pugslyP 2 Replies Last reply Reply Quote 0
                            • pugslyP Offline
                              pugsly @BenNewsome
                              last edited by

                              @BenNewsome yes I did

                              1 Reply Last reply Reply Quote 0
                              • pugslyP Offline
                                pugsly @BenNewsome
                                last edited by

                                @BenNewsome I see that it installed two things under \Magicmirror\modules\MMM-NetworkScanner\node_modules

                                one dir called ping which is what the error says it can’t find
                                the other called sudo (that one kinda worries me).

                                Anyway it still doesn’t work.

                                B 1 Reply Last reply Reply Quote 0
                                • B Offline
                                  BenNewsome @pugsly
                                  last edited by

                                  @pugsly Hi pugsly,
                                  sudo is for arp-scan which is the MAC address checker as this requires sudo to be called.

                                  Ping is the one I added which just calls the ping command from node.

                                  Could you try editing the file: /home/pi/MagicMirror/modules/MMM-NetworkScanner/node_helper.js

                                  On line 10 it says
                                  const ping = require('ping')

                                  Could you replace it with:
                                  const ping = require("ping");

                                  (Change the speach marks and add a semicolon.)

                                  I have no idea if this is the reason as it works fine on my system, but it is my current best guess.

                                  pugslyP 1 Reply Last reply Reply Quote 0
                                  • pugslyP Offline
                                    pugsly @BenNewsome
                                    last edited by

                                    @BenNewsome Sorry… same thing, still says can’t find module ‘ping’.

                                    B 1 Reply Last reply Reply Quote 0
                                    • B Offline
                                      BenNewsome @pugsly
                                      last edited by

                                      @pugsly I think I have managed to replicate your error.

                                      Could you run the following command.

                                      (cd /home/pi/MagicMirror/modules/MMM-NetworkScanner && npm install)

                                      npm install needs running from the module directory so that it downloads the npm ping module. When I delete the ping module I get the error you do, and when I run the command above the error goes away.

                                      D pugslyP 2 Replies Last reply Reply Quote 0
                                      • D Offline
                                        derek7467 @BenNewsome
                                        last edited by

                                        @BenNewsome any easy way to change the text color? I’m able to change text size via custom.css but the color doesn’t seem to take.

                                        1 Reply Last reply Reply Quote 0
                                        • Mykle1M Offline
                                          Mykle1 Project Sponsor Module Developer @ianperrin
                                          last edited by yawns

                                          @ianperrin said in MMM-NetworkScanner:

                                          there no such thing as a stupid question so keep asking away…

                                          Hi, and please help. Thank you.

                                          I’ve got this module running but the only devices that will show as active are the Github from the sample config and the showUnknown devices which I have turned off. All others that I have added appear as offline. I’m using the MAC addresses that I got from my router and they are correct and all in lower case. I read above where that might be an issue. I did git pull and npm install in the MMM-NetworkScanner folder.

                                          {
                                                  		module: 'MMM-NetworkScanner',
                                                  		position: 'top_left', 
                                                  		config: {
                                          			devices: [
                                          				{ ipAddress: "github.com", name: "Github", icon: "globe"},
                                          				{ ipAddress: "192.168.1.4", name: "MykleDesktop", icon: "desktop"},
                                                              		{ macAddress: "mac.address.all.lower.case", name: "DoveMBP", icon: "laptop"},
                                                              		{ macAddress: "mac.address.all.lower.case", name: "MyklesiPhone", icon: "mobile"},
                                                              		{ macAddress: "mac.address.all.lower.case", name: "JayAndroid", icon: "mobile"},
                                                              		{ macAddress: "mac.address.all.lower.case", name: "DonnaMBP", icon: "laptop"},
                                                              		{ macAddress: "mac.address.all.lower.case", name: "DonnaiPhone", icon: "mobile"},
                                          				{ macAddress: "mac.address.all.lower.case", name: "NikkiiPhone", icon: "mobile"},
                                                          		],
                                                      			showUnknown: false,  
                                                  			showOffline: true, 
                                                  			showLastSeen: true,
                                                  			keepAlive: 180,
                                                  			updateInterval: 10,
                                                  			residents: "Mobile", // I tried this with each name of the devices above and each icon name
                                                  			occupiedCMD: {notification: 'TEST', payload: {action: 'occupiedCMD'}},
                                                  			vacantCMD:   {notification: 'TEST', payload: {action: 'vacantCMD'}},
                                                  		}
                                          

                                          Create a working config
                                          How to add modules

                                          D 1 Reply Last reply Reply Quote 0
                                          • D Offline
                                            derek7467 @Mykle1
                                            last edited by

                                            @Mykle1 looks like when i use IP, it shows offline vs online accurately. When i use MAC or a web address, it doesnt. Something is wrong with the scan by mac option.

                                            1 Reply Last reply Reply Quote 1

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 2 / 6
                                            • 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