FANatic Monitor (1 Viewer)

panni

Portal Member
March 21, 2008
15
6
FANatic Monitor

Last updated: 08/03/31
Current version: 0.0.0.1b
Author: panni
Type: Utilities

Information
After failing in setting up the "My SpeedFan" plugin, which seems to have died in 2007 I decided a new system monitoring plugin for MediaPortal has to be developed.
With the working title "Speedphan" FANatic Monitor is the first MediaPortal plugin I've made and the first time I (was forced to) use C# - in the meantime I'm a Python developer.

Description
FANatic Monitor is a plugin which wraps up the information gathered from logfiles of the most famous Fan/Temperature/Voltage monitoring tool "SpeedFan" by Alfredo Milani Comparetti into a neat, lightweight MP plugin.
Compared to "My SpeedFan" this tool requires only a very short and easy to do setup and has a way clearer and more flexible output.

Downloads

Dependencies
  • MediaPortal 0.2.3.0 or later
  • SpeedFan (at least a version with Log support)

Installation
  • install SpeedFan (SpeedFan - Access temperature sensor in your computer - download the newest beta build if you want to have correct temperature readings on multi core systems for CoreX)
  • enable logging in the configuration of SpeedFan
  • check the "Logging" box of every sensor you want to have displayed in FANatic Monitor
  • use MPInstaller to install the MPI package, or extract the ZIP package to your MediaPortal folder (source included)
  • run FANatics setup
  • if your SpeedFan folder was not automatically detected by FANatic, please specify it
  • for every sensor in SpeedFan's config having "Logged" set to true please specify the type of the sensor in the "Sensors" part of the setup - this will define the unit of a sensor-reading's value (°F or °C for a temperature, rpm for a fan speed, V for a Voltage)
  • run MediaPortal

Roadmap
0.0.0.2
  • perhaps a neater look, some custom icons
  • configurable sensor reading threshold
  • threshold alarm on threshold reach
  • you tell me :)

Issues
  • fanatic.xml config file's layout is pretty ineffective; I was too lazy to improve the MPXMLConfig class stolen from My Speedfan; perhaps will redo it in some upcoming version

Version history
0.0.0.1b:
  • sensor hover didn't work
  • invalid installer MPI for custom skins now fixed
0.0.0.1:
  • initial release


Please comment on this plugin to help me improving it.
 

Sh4nn0w

MP Donator
  • Premium Supporter
  • September 14, 2006
    321
    23
    Home Country
    United Kingdom United Kingdom
    Nice work, thanks. I had been using the old plugin in the past.

    Just to let you know when I used the MPI installer, it identifed my installed skins during the setup, but after finishing configuring it I noticed it hadn't actually copied over the fanatic.xml skin file into any of my skin directories. (error came up about missing xml file in Mediaportal).

    I got around this by downloading the source zip and copying over from there.

    Now i've got it showing CPU temps ok, I'm going to play around with speedfan a bit more and add some of the other sensors into the log.

    Keep up the good work.

    :D
     

    jburnette

    Portal Pro
    August 24, 2006
    758
    116
    Kentucky
    Home Country
    United States of America United States of America
    I've never been able to actually get the old Speedfan plugin to work. This one seems to work perfectly, thanks a lot. Love the name, by the way.
     

    Inker

    Retired Team Member
  • Premium Supporter
  • December 6, 2004
    2,055
    318
    Nice, seems very useful (have yet to try it though).

    As for feature requests, any way to pop-up a warning when some value exceeds a threshhold? That would be awesome!
     

    panni

    Portal Member
    March 21, 2008
    15
    6
    Good idea Inker, though I won't add a popup, more like additional info in RED or something, if the value exceeds the threshold.
    I'm thinking about some detailed statistics, too, like for example a "Today's min" or "Today's max" view on sensor hover.

    I need some help with the MPI thing, because I don't exactly understand the skin handling when creating the MPI. Could someone introduce me further into that system, perhaps via IRC #mediaportal?

    UPDATE:
    Problem has been resolved, thanks to Dukus. MPI will be updated.

    UPDATE:
    Fixed installer has been added. May take some time until the official mirror serves the updated - in the meantime use my local mirror.
     

    Inker

    Retired Team Member
  • Premium Supporter
  • December 6, 2004
    2,055
    318
    Good idea Inker, though I won't add a popup, more like additional info in RED or something, if the value exceeds the threshold.
    I'm thinking about some detailed statistics, too, like for example a "Today's min" or "Today's max" view on sensor hover.

    I need some help with the MPI thing, because I don't exactly understand the skin handling when creating the MPI. Could someone introduce me further into that system, perhaps via IRC #mediaportal?

    UPDATE:
    Problem has been resolved, thanks to Dukus. MPI will be updated.

    Panni......what do you mean red? I mean someway to inform me about this, even when I'm not inside the plugin screen (I obviously don't stare at it all the time and the cpu is more likely to get hot while watching a movie in fullscreen or something) :)
     

    panni

    Portal Member
    March 21, 2008
    15
    6
    I don't know if that'd be possible - depends on what MediaPortal allows me to do as a plugin developer. Perhaps this can be achieved by creating a process plugin which monitors in background and alerts if a threshold is reached.
    As I said it's my first plugin, so it will take me some time to figure out what's needed for achieving this goal.

    Any ideas?
     

    Inker

    Retired Team Member
  • Premium Supporter
  • December 6, 2004
    2,055
    318
    Your dll stay loaded the whole time, so just add a timer, that checks, lets say every 10 seconds, and if a threshold is exceeded bring up a dialog....pseudocode ahead:

    Code:
    if(threshholdexceeded)
    {
         GUIDialogYesNo dlgYesNo = (GUIDialogYesNo)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_YES_NO);
    dlgYesNo.SetHeading(GUILocalizeStrings.Get("Warning - PC about to explode")); 
    dlgYesNo.SetLine(1, "Warning, Threshold for CPU Temp exceeded - 100°C!!!");
    dlgYesNo.SetLine(2, "Want to show the status window?");
    dlgYesNo.DoModal(GUIWindowManager.ActiveWindow); // show the dialog
    if (dlgYesNo.IsConfirmed) // user clicked yes
    {
         GUIWindowManager.ActivateWindow(YOUR_WINDOW_ID); // jump to your plugins window so user can see all values
    }
    }
     

    panni

    Portal Member
    March 21, 2008
    15
    6
    Oh, nice, thank you, didn't know that the DLL stays loaded all the time.
    Will definitely add this as an option, thank you!
     

    Sh4nn0w

    MP Donator
  • Premium Supporter
  • September 14, 2006
    321
    23
    Home Country
    United Kingdom United Kingdom
    Tweaked the fanatic.xml file to fit in better with widescreen for Indigo & Monochrome (attached). same XML works for both.
     

    Attachments

    • Fanatic-Indigo.jpg
      Fanatic-Indigo.jpg
      63.6 KB
    • Fanatic-Monochrome.jpg
      Fanatic-Monochrome.jpg
      66.4 KB
    • fanatic.xml
      30.6 KB

    Users who are viewing this thread

    Top Bottom