Rainmeter plugin for MSI Afterburner

Discussion in 'MSI AfterBurner Application Development Forum' started by stangowner, Apr 12, 2010.

  1. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Here is a plug-in that allows you to put MSI Afterburner hardware monitoring information into the Rainmeter customizable resource meter.

    Download the appropriate file and save it to the C:\Program Files\Rainmeter\Plugins folder:
    32-bit version of Rainmeter: MSIAfterburner.dll
    64-bit version of Rainmeter: MSIAfterburner.dll

    Now you can define any measures from MSI Afterburner. There is a required parameter "DataSource" which specifies which source in Afterburner to query.

    [MeasureMSIAfterburnerGPUUsage]
    Measure=Plugin
    Plugin=Plugins\MSIAfterburner.dll
    DataSource=GPU usage

    You can then use this measure in any meters you would like. For more information on creating skins, please read the documentation on the Rainmeter site.

    I have created a simple skin as an example. You can download it here: MSIAfterburner.zip. Simply extract this to your Documents\Rainmeter\Skins folder and enable it through the Rainmeter options.

    Once you do so, the following should appear:

    [​IMG]

    Let me know if you guys have any questions or issues. I have only tested this on Win7x64 with the 32 and 64 bit versions of Rainmeter. It should be fine for XP-7 32 or 64.

    Thanks,

    Nick
     
  2. Unwinder

    Unwinder Ancient Guru Staff Member

    Messages:
    17,083
    Likes Received:
    6,567
    Perfect job as usual, Nick! :D
     
  3. Cybermancer

    Cybermancer Don Quixote

    Messages:
    13,795
    Likes Received:
    0
    GPU:
    BFG GTX260OC (192 SP)
    First of all: thank you so much for your work on this, stangowner! :thumbup:

    But unfortunately for some reason I can't get it to work properly on my PC:

    [​IMG]

    I'm using Windows 7 Home Premium x64, Forceware 197.25, MSI Afterburner 1.5.1 and Rainmeter 1.1 x64.

    I put the *.dll file into the \Rainmeter\Plugins folder and the skin into the Documents\Rainmeter\Skins folder.

    I tried both the x64 and the x32 version of the *.dll.

    In MSI Afterburner I have "Show in On-Screen Display", "Show in Logitech keyboard LCD display", and "Show in tray icon" for the various infos disabled (boxes not checked), although I already tried it with them being enabled, too.
     
  4. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    On 64 bit versions of Windows, if the Rainmeter/Plugins folder is in "C:\Program Files" you should use the 64 bit dll. If it is in "C:\Program Files (x86)" you should use the 32 bit dll. 32 bit version of Windows will always use the 32 bit dll.

    These options should not make a difference. As long as Afterburner is running, the data should be in shared memory which is where I am accessing it.

    I think the issue lies in the fact that you have 2 GPUs. Please edit the MSIAfterburner.ini file in the Skins folder to change "GPU temperature" to "GPU1 temperature" or "GPU2 temperature". It should match what the Afterburner monitor shows. Assuming this works, you'll need to do the same for the other measures.
     
    Last edited: Apr 12, 2010

  5. Cybermancer

    Cybermancer Don Quixote

    Messages:
    13,795
    Likes Received:
    0
    GPU:
    BFG GTX260OC (192 SP)
    I know. :D

    I just thought I'd give it a shot - just in case. :nerd:

    That indeed did the trick for me!!!

    Man, that's awesome! I'm more than happy to have this working now! I guess I'm off to making my own custom skin now. :D

    Thanks again, stangowner. Your work is more than appreciated! :thumbup:
     
  6. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Great!!!

    Make sure you post a snapshot when you have your skin configured how you like :)
     
  7. Cybermancer

    Cybermancer Don Quixote

    Messages:
    13,795
    Likes Received:
    0
    GPU:
    BFG GTX260OC (192 SP)
    I will. :D

    I'm more than likely going for a very minimalistic design/skin, though, since I'm "only" interested in the GPU temps and the fan speeds.

    Thank you so much again, stangowner! :)
     
  8. Cybermancer

    Cybermancer Don Quixote

    Messages:
    13,795
    Likes Received:
    0
    GPU:
    BFG GTX260OC (192 SP)
    As promised, here's my modified version of your skin for Rainmeter, stangowner:

    [​IMG]

    And here's the modified code for the skin above:
    Code:
    [Rainmeter]
    Update=1000
    Author=Nick Connors
    
    ; ---------- styles ----------
    
    [MSIAfterburnerTextStyle]
    FontColor=255, 255, 255, 160
    FontFace=Tahoma
    FontSize=8
    AntiAlias=1
    DynamicVariables=1
    
    [MSIAfterburnerGraphStyle]
    LineColor=255, 255, 255, 55
    PrimaryColor=255, 255, 255, 37
    W=180
    H=43
    DynamicVariables=1
    
    ; ---------- start skin GPU1 ----------
    
    [MeasureMSIAfterburnerGPUTemp]
    Measure=Plugin
    Plugin=Plugins\MSIAfterburnerx64.dll
    DataSource=GPU1 temperature
    MinValue=0
    MaxValue=100
    
    [MeterMSIAfterburnerGPUTemp]
    Meter=String
    MeasureName=MeasureMSIAfterburnerGPUTemp
    X=5
    Y=45r
    Text="GPU 1: %1°C"
    NumOfDecimals=0
    MeterStyle=MSIAfterburnerTextStyle
    
    [MeterMSIAfterburnerGPUTempGraph]
    Meter=HISTOGRAM
    MeasureName=MeasureMSIAfterburnerGPUTemp
    X=0
    Y=0
    MeterStyle=MSIAfterburnerGraphStyle
    
    [MeterMSIAfterburnerGPUTempLine]
    Meter=Line
    MeasureName=MeasureMSIAfterburnerGPUTemp
    X=0
    Y=0
    MeterStyle=MSIAfterburnerGraphStyle
    
    [MeasureMSIAfterburnerFanSpeed]
    Measure=Plugin
    Plugin=Plugins\MSIAfterburnerx64.dll
    DataSource=Fan1 speed
    MinValue=0
    MaxValue=100
    
    [MeterMSIAfterburnerFanSpeed]
    Meter=String
    MeasureName=MeasureMSIAfterburnerFanSpeed
    X=105
    Y=45r
    Text="Fan 1: %1%"
    NumOfDecimals=0
    MeterStyle=MSIAfterburnerTextStyle
    
    ; ---------- start skin GPU2 ----------
    
    [MeasureMSIAfterburnerGPU2Temp]
    Measure=Plugin
    Plugin=Plugins\MSIAfterburnerx64.dll
    DataSource=GPU2 temperature
    MinValue=0
    MaxValue=100
    
    [MeterMSIAfterburnerGPU2Temp]
    Meter=String
    MeasureName=MeasureMSIAfterburnerGPU2Temp
    X=5
    Y=50r
    Text="GPU 2: %1°C"
    NumOfDecimals=0
    MeterStyle=MSIAfterburnerTextStyle
    
    [MeterMSIAfterburnerGPU2TempGraph]
    Meter=HISTOGRAM
    MeasureName=MeasureMSIAfterburnerGPU2Temp
    X=0
    Y=50
    MeterStyle=MSIAfterburnerGraphStyle
    
    [MeterMSIAfterburnerGPU2TempLine]
    Meter=Line
    MeasureName=MeasureMSIAfterburnerGPU2Temp
    X=0
    Y=50
    MeterStyle=MSIAfterburnerGraphStyle
    
    [MeasureMSIAfterburnerFan2Speed]
    Measure=Plugin
    Plugin=Plugins\MSIAfterburnerx64.dll
    DataSource=Fan2 speed
    MinValue=0
    MaxValue=100
    
    [MeterMSIAfterburnerFan2Speed]
    Meter=String
    MeasureName=MeasureMSIAfterburnerFan2Speed
    X=105
    Y=45r
    Text="Fan 2: %1%"
    NumOfDecimals=0
    MeterStyle=MSIAfterburnerTextStyle
     
  9. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Thanks!

    So you have a histogram and line on top of each other showing the temp history for GPU1 and GPU2? Then under them you have text for the latest temp and fan reading?

    Looks good. Does it work well within your theme? You have them at the top with your other meters?

    Seeing how you are the guinea pig :), everything work out well for you? No more hiccups using the plugins?
     
  10. Cybermancer

    Cybermancer Don Quixote

    Messages:
    13,795
    Likes Received:
    0
    GPU:
    BFG GTX260OC (192 SP)
    Exactly. :)
    That's why I configured it like you mentioned above - to make it fit in with the other skins which I'm already using. Here's an updated, partial screenshot (your GPU temp skin is in the top right corner under the CPU usage histogram):

    [​IMG]
    Nope, no problems at all anymore. :nerd:

    I'm just pondering if I really need the histogram/line graph since most of the time when I can see the desktop the graph doesn't change much anyway. Maybe I'm going to get rid of the graphs and only use the text infos.
     

  11. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    That really looks nice when viewed with the rest of the theme. Thanks for the pic!
     
  12. Kohlendioxidus

    Kohlendioxidus Guest

    Messages:
    1,399
    Likes Received:
    13
    GPU:
    Sapphire Vega 56 Pu
    It doesn't work on Vista 64:3eyes:, I got 0 values allover, it actually looks that the plugin is not working under Vista64.
     
    Last edited: May 12, 2010
  13. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Did you undo this?

    I'll check Vista x64 tonight when I get home.
     
  14. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    It works fine on Vista x64.
     
  15. 9kracing

    9kracing New Member

    Messages:
    3
    Likes Received:
    0
    GPU:
    EVGA GTX 470 SLI
    I've tried everything I can think of under the sun to get this to work on SLI cards. It worked GREAT with just a single card.... as soon as I went SLI, it went to all 0.000 in every slot.

    I tried modifying the afterburner.ini file and changing gpu temp to gpu1 temp etc... it only kinda worked. Now I get my gpu usage on one side, and my 2nd gpu temp on the other side... but in all 3 rows. I've tried every combination I can think of too... all gpu1, half gpu1/gpu2, gpu_1, 1gpu, etc...

    I also tried the skin that Cybermancer linked... both the fan speed and the temp are the same measurement. You can even see it showing that way on Cybermancer's desktop... he musta just not noticed. So basically... that one doesn't work either.

    Can the OP possible get this working for SLI? It would be MUCH apreciated... this turns out to be one of my favorite rainmeter skins!
     

  16. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    I don't have an SLI system to test, but I'll definitely try to help. Let me reply back later. I don't have a PC with Afterburner at the moment to look at.
     
  17. 9kracing

    9kracing New Member

    Messages:
    3
    Likes Received:
    0
    GPU:
    EVGA GTX 470 SLI
    Awesome, thank you for the help!
     
  18. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    Mine show the same in the first post as well (63.0°C and 63.0%). But if I change my fan to manual and spin it down to 40% the Rainmeter skin is reflected properly.

    I just sent you a PM. I'll keep an eye out for that file.
     
  19. stangowner

    stangowner Guest

    Messages:
    607
    Likes Received:
    11
    GPU:
    2xMSI N550GTX-Ti Cy II OC
    The plugin seems fine (I have not updated it).....I think you may have just been missing something in your skin.

    Here is a new skin that should work well out of the box for users with 2 GPUs, or at least provide a good starting point for your own skin.
    MSIAfterburner2.zip

    Here is a picture using static data from 9kracing's .hml log. GPU1's graphs are green and GPU2's are red.

    [​IMG]

    I set the memory upper limit to 1280 to match your 470s (single GPU skin in first post is 1024). Users will have to modify the skin to match what their cards have.

    You did find one flaw for me though. You'll notice that the Framerate and PCB temps display what the last valid value was (GPU2 memory clock and GPU2 temp respectively). This is because those values are not being provided by Afterburner as it was on my system in the first post. I'm not sure if this is normal rainmeter behavior, or if I need to reset the value to 0 in the plugin. I'll check that out later. Not a big deal, just modify the skin to remove the measures if you are not using them. Or just add those monitors to Afterburner's config.

    Let me know how you make out.

    - Nick
     
  20. 9kracing

    9kracing New Member

    Messages:
    3
    Likes Received:
    0
    GPU:
    EVGA GTX 470 SLI
    Alright!! This one works great. The only thing not working is the Voltage... it still reads 0.000. However, there IS a possibility that it's because i'm using a custom overvolting bios. I'd imagine that with the stock BIOS i'd see the correct voltage. Either way, thanks SOO much for the help. I got my most useful skin back. :)
     

Share This Page