Read the statement by Michael Teeuw here.
MMM-NetworkScanner
-
@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.
-
@BenNewsome Sorry… same thing, still says can’t find module ‘ping’.
-
@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.
-
@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.
-
@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
andnpm install
in theMMM-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'}}, }
-
@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.
-
@BenNewsome
Removed it, did a new clone, and ran the npm install (See Below). Still getting the error that ping is missing and all of my MAC machines are grayed out.pi@MagicMirror:~/MagicMirror/modules/MMM-NetworkScanner $ cd …
pi@MagicMirror:~/MagicMirror/modules $ sudo rm -r ~/MagicMirror/modules/MMM-Netw orkScanner
pi@MagicMirror:~/MagicMirror/modules $ git clone https://github.com/ianperrin/MM M-NetworkScanner.git
Cloning into ‘MMM-NetworkScanner’…
remote: Counting objects: 132, done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 132 (delta 6), reused 0 (delta 0), pack-reused 116
Receiving objects: 100% (132/132), 80.07 KiB | 0 bytes/s, done.
Resolving deltas: 100% (74/74), done.
Checking connectivity… done.
pi@MagicMirror:~/MagicMirror/modules $ cd /home/pi/MagicMirror/modules/MMM-Netwo rkScanner && npm install
ping@0.1.10 node_modules/ping
└── q@1.4.1sudo@1.0.3 node_modules/sudo
├── inpath@1.0.2
├── pidof@1.0.2
└── read@1.0.7 (mute-stream@0.0.7)
pi@MagicMirror:~/MagicMirror/modules/MMM-NetworkScanner $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’ }mm-0 (out): { macAddress: ‘18:b4:30:1d:f6:50’,
mm-0 (out): name: ‘Nest Thermostat’,
mm-0 (out): icon: ‘dot-circle-o’ }, -
Only difference between you and I is you run the install with the &&. Remove it again, rerun from the beginning and manually CD into the directory and run the install from there. Skip using the && to install all in one shot.
-
@derek7467
as you said, IP works fine MAC doesn’t… MAC was working up until the update where you could add the ‘last seen xxx min ago’ option. -
@pugsly yea I’m in same boat. I haven’t read all the code just yet but I imagine the way it performs the ARP scan by Mac is the culprit. For now I set my untangle router to serve out static DHCP leases and thus my problem is gone.