Giter VIP home page Giter VIP logo

mmm-pc-stats's Introduction

MMM-PC-Stats

Designed for PC boards running MM. Retrieves the CPU name, amount of total RAM and Free Ram, and identifies the CPU and the CPU load by percentage, per core/threads. Tested on ubuntu OS. Now it gets the temperature of each core of your processor

Initial version. Expect more options.

  • You can set how often the data is retrieved (config option)

  • You can set it so only the values change or the entire module fades in and out when data is retrieved.

  • CPU temperature, per core.

  • Annotated .css file included for coloring text and header.

Examples

  • One with color. One standard white.

Installation

  • git clone https://github.com/mykle1/MMM-PC-Stats into the ~/MagicMirror/modules directory.

  • npm install in your ~/MagicMirror/modules/MMM-PC-Stats directory.

Config.js entry and options

{
       disabled: false,
       module: 'MMM-PC-Stats',
       position: 'top_left',
	   config: {
	   videoCard: "NVIDIA GeForce GTX660", // name of your video card
		useHeader: true,           // true if you want a header. 
    	   	header: "MMM-PC-Stats",    // Any text you want. useHeader must be true
    	   	maxWidth: "300px",
    	   	animationSpeed: 0,         // 0 = no fade in and out. Only CPU load and Free RAM usage changes.
		updateInterval: 15 * 1000, // How often the CPU and Free RAM is checked for load and usage.
	}
},

SpaceCowboysDude gets props for his loop magic trick and his combining 2 npm packages in one return

And Sam for his wizardry at getting data from a terminal command

mmm-pc-stats's People

Contributors

mdetweil avatar mykle1 avatar sdetweil avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

justjim1220

mmm-pc-stats's Issues

Daylight module in first image?

Is the daylight/nighttime module displayed in the first image on the readme part of this module? Assuming not, which module did you use?

I have a fix for you...

you have this in your js file:
`
/* // Can't get the dynamically created div's to work
// Hard coding 8 if statements below in the meantime
// need to map "Core 0" to just [0] for 8 "Cores"

    for (var i = 0, len = Sensors['coretemp-isa-0000']['ISA adapter'].length; i < len; i++) {
        var newElement = document.createElement("div");
        newElement.classList.add("small", "bright", "coreNameTemp");
        newElement.innerHTML = Sensors['coretemp-isa-0000']['ISA adapter'][i].name + " &nbsp  @  &nbsp " 
							 + Sensors['coretemp-isa-0000']['ISA adapter'][i].value + "&deg;C";
        wrapper.appendChild(newElement);
    }

*/
`

the following is the fix I think you are looking for:
`
for (var i = 0, len = Stats.cpu.threads.length; i < len; i++) {

	var Element = document.createElement("span");
	Element.classList.add("large", "bright", "usage");
	Element.innerHTML = Stats.cpu.threads[i].name + "&nbsp @ &nbsp" + Number(Math.round(Stats.cpu.threads[i].usage+"e2")+"e-2") + "%" + " &nbsp&nbsp " + " ";

    // Check if core0 has temp sensor
	 var core0TempCheck = Sensors["coretemp-isa-0000"]['ISA adapter']['Core 0'];
	if (typeof core0TempCheck !== 'undefined'){

		// core0Temp
		var core0Temp = document.createElement("span");
		core0Temp.classList.add("large", "bright", "core0Temp");
		core0Temp.innerHTML = "Temp: " + " &nbsp " + Sensors["coretemp-isa-0000"]["ISA adapter"]["Core 0"].value + "&deg;C"; + "<br>";
		Element.appendChild(core0Temp);
	}
	wrapper.appendChild(Element);
}

`
no need for 8 separate entries

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.