Read the statement by Michael Teeuw here.
Internet Monitor
-
@ronny3050 said in Internet Monitor:
remove all margins from the custom.css
I have been testing for some time and found a solution !
My custom.css looks like this now.wifi-symbol-1 [foo], .wifi-symbol-1, .wifi-symbol-2 [foo], .wifi-symbol-2, .wifi-symbol-3 [foo], .wifi-symbol-3, .wifi-symbol-4 [foo], .wifi-symbol-4 { position: relative; float: right; margin-top: -30px; margin-right: -20px; }The result on the screen looks like this

Now it looks like this I took out the header of Internet-monitor, now it belongs to the header with my status. Didn’t now negative numbers in margins were also possible till I tested it.
-
@pjkoeleman That’s correct since you float it to right, but then half of the symbol will be out of bounds on the right, so you can indeed use negative margin-right. :)
-
@ronny3050 Never to old to learn.
-
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”?
-
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.jsfile, 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.jsentry 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.
-
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. -
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?
-
@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.jsthen 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 thenode_helper.jsthat the ping is complete. If the Wifi symbol doesn’t appear after that, come back and we’ll look at it. -
@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.
-
@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;}
-
@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
ServerIdvariable. You haveIdin 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' }, } }, -
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.
-
I am also not getting the wifi icon to appear by itself. Hoping for an update/fix as I really love the idea of a wifi status icon on my MM.
-
@GoodWillGustin I’d like to have it also.
I experience some wifi disconnections and I sometimes notice it couple hours after the issue. So that would be great to have it on the mirror, just like on the graphical UI of the Pi. -
@mattx38 I have just the Wifi icon on my MM, can you paste your config and I’ll take a look to at it. Also I setup a little script to restart my networking in the event of disconnection which I can share if that’ll help?
-
Is the missing WiFi icon still an issue? I haven’t looked into that area of the code. If there seems to be a problem I can dive into it.
-
@bhepler I have the same problem, No Wifi icon. Have mirrors in MacOS and RPI and have same results.
-
All right, I’ll dive back into it and see if I can fix it.
Update: Some progress made but still a ways to go. I ended up refactoring a lot of the code.
-
Okay, I have completed my first pass at fixing the WiFi symbol. It works for me, so let’s see how it goes for you.
If you’re not using my repository, you’ll have to switch by deleting your
modules/internet-monitorfolder, cloning from my repository athttps://github.com/BrianHepler/internet-monitorand then installing like normal. You’ll have tocd internet-monitorand thennpm install.If you’re already using my repository, just
cd MagicMirror/modules/internet-monitorandgit pull. It will probably tell you that you need to stashpackage-lock.json. Just delete that file and try again.Warning: The custom WiFi icon doesn’t work yet. I got the default one to show up, but I’m still working on the one with the custom colors. But right now I want to verify that you guys can at least see the WiFi icon.
-
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