View Issue Details

IDProjectCategoryView StatusLast Update
0001712SpeedFanHardware supportpublic2011-08-28 11:07
Reporternorman02us Assigned Toalfredo  
PrioritynormalSeverityfeatureReproducibilityhave not tried
Status resolvedResolutionfixed 
PlatformPCOSWin7 64bitOS Version7600
Fixed in Version4.45 beta 
Summary0001712: support for AMD/ATI GPUs
DescriptionHi Alfredo,

I would like to know if support for AMD graphic cards is any closer. Do you have the necessary documentation by now?
TagsNo tags attached.
Motherboard ModelEP45-UD3P
Video Card Model


has duplicate 0001845 resolvedalfredo No show for graphics card 



2010-12-20 16:14

manager   ~0005552

I purchased a video card, but AMD didn't give that much. I still need to find the right person.


2010-12-22 00:59

reporter   ~0005606

Last edited: 2010-12-22 01:12

AMDs first (lame) response was:
"maybe you can find the necessary information here:"

Since I assume that won't help you, can you please write me an email with the information what exactly you're looking for?


2011-01-21 03:13

reporter   ~0005708

Last edited: 2011-01-21 03:15

I also have problems to get the temperature of my ATI HD 5870 into Speedfan.
Im wondering cause a lot of other tools like Everest does show it.
I just want to adjust my case fans, if the gpu gets hot.
Maybe a workarround would be nice, somthing like to import the temp values from a virtual sensor driver.

Plz let me know how i could help you with your great work, thanks a lot for speedfan!

I did run your ACPI Explorer, maybe that report will help, should i send it in ?



2011-02-04 02:11

reporter   ~0005800

Last edited: 2011-02-04 03:13

Heck, even OCCT can read GPU temp on my HD4850 with it's internal source, so it cannot be that hard.
Please alfedo, ask for any help you need, let's make this work :)
I will try that with ADL SDK and post results here.

Hey, I managed to do that!
It's not that hard at all, alfredo contact me if you'd like to include that in SpeedFan! I'd like that very much! wlw_wl - at -


2011-02-04 03:38

reporter   ~0005802

hey can u publish here your results ?

i still have problems. Thanks


2011-02-04 13:31

reporter   ~0005804

Last edited: 2011-02-04 13:57

I did it in my own application, using ATI/AMD ADL ASK, which is an API for ATI/AMD video card driver.
If alfredo will be kind enough to implement it in SpeedFan, then we all can profit from that :)
Until then, no Radeon temps in SpeedFan.

Without alfredo's commitment, I would have to simulate a device which reads temps from GPU, that device then can be discovered by SpeedFan and provide it with temperature. If possible at all, it's a wrong way to go.


2011-02-16 00:09

reporter   ~0005852

Gentle bump.
Upgraded to 6850, no reading of course.


2011-02-16 00:37

manager   ~0005853

Hello all :-)
I purchased the hardware a few months ago. I was looking for the best method to read temperatures and I am still trying. I will implement the SDK method, hopefully, in 4.44. If everything goes fine, 4.43 Final should be almost ready.


2011-02-16 01:16

reporter   ~0005854

thanks a lot


2011-02-16 02:07

reporter   ~0005855

Do you know of any other method?
The only one I found was through the driver (ADL SDK), so naturally there is at least one more method - the way the driver gets the information from the video card. I'm not sure if it's worth going that way.

Thanks a lot!


2011-02-16 14:39

manager   ~0005863

I purchased some video cards to add support for ATI, but it looks like I purchased some that do not have all the monitoring features I expected. Can you suggest a model (not too expensive, please) that exposes a hardware monitor chip on the I2C BUS?
Thank you.


2011-02-16 15:56

manager   ~0005864

In the meantime I can tell you that SpeedFan 4.44 will show ATI video card temperatures :-)


2011-02-17 00:11

reporter   ~0005871

Last edited: 2011-02-17 00:21

Do you want to use I2C on cards that can't be read with ADL or to avoid using ADL?

ADL_Overdrive5_Temperature_Get() works from R600 up (HD2000), and since R500 and below are cards from the X1000 series and below, they aren't used much anymore.
I tried reading the temp from I2C some time ago on some older card (I think it was my Radeon 9550 Pro), but couldn't get it to work. Guess Ring0-direct-PCI-access-stuff was a bit too much for me back then.
I've read a lot about the topic back then, many people were trying to implement it on driver level in Linux, but I haven't encountered any successful attempts.

I looked at Steam Hardware Survey (which I think is a comprehensive source) and video cards unsupported by ADL SDK are way way less than 1% of all cards. So maybe leaving them unsupported wouldn't be a great sin ;) Also, ADL lets you set GPU's fan speed easily and safely.

As for the cheap card, what models have you bought?
I'd say try old 9000 series, you'll find one for almost nothing (couple of Euros here). Of course it's hard to say which will let you talk with the temp sensor on I2C directly, if any at all. The fastest way to check is to scan the bus from within AtiTools, I guess.

I'd love to see that in next beta and test, test, test, repeat (if there will be any beta before 4.44). Not knowing your schedule, so I'm just saying... :)

All in all, this is probably the other method I was talking about - the way the driver gets the info in the first place. I seriously think the amount of work required to support such a small fraction of graphics cards used nowadays, could be diverted to generally more useful areas, like enhanced fan speed control discussed in another ticket (1746) :)


2011-02-17 00:35

manager   ~0005873

One of my video cards is an Asus EAH5770 CuCore. On that video card the fan is using a 3-wire connector, but I can't read its speed.


2011-02-17 01:11

reporter   ~0005875

If the fan speed shows up in Catalyst Control Center on Overdrive tab, then you can read it with ADL SDK easily (ADL_Overdrive5_FanSpeed_Get();).
If you mean I2C, well, don't :)


2011-02-17 14:05

reporter   ~0005878

As far as I know, none of the ATI 9xxx series had temperature sensors (unless some custom models had it).
I believe ATI x800 models started to get temp sensors.



2011-02-17 19:37

reporter   ~0005879

Bugger, must have been a different GPU then, sorry for the confusion.


2011-04-03 04:07

reporter   ~0006012

*bump* :>
4.44 is here :>


2011-04-03 09:32

manager   ~0006015

I am working on this. 4.44 has already more new features than I planned to add. It is not easy to beta test them all at once :-)


2011-04-03 12:33

reporter   ~0006019

Ok, ok, no pressure...


kidding ofc., you're doing very good job, I'm waiting for GPU temp eagerly, but take your time to do your stuff :)


2011-06-20 10:35

reporter   ~0006251

@alfredo: If you're not sure if your AMD graphic cards have monitoring sensors the easiest method to check is the 'sensors' tab of the GPU-Z program from techpowerup:


2011-06-22 11:17

manager   ~0006253

Hello Thomas, thank you for the link. What I actually would like to do is to buy a video card with an "external" hardware monitor chip that can be accessed using the I2C bus. I bought tow with no luck :-(


2011-06-22 11:48

reporter   ~0006254

I doubt that such a card exists, since AMD HD series GPUs, even the HD-2xxx seem to have on-chip monitoring of temperature, core voltage, and fan speed PWM control logic (although some cards don’t use the PWM logic). I doubt any manufacturer will add an external I2C chip when it's already in the GPU core. And the AMD ADL SDK allows reading the temperature and maybe other sensors.


2011-06-22 12:50

reporter   ~0006255

why not contact msi afterburner creator maybe they can help you much than amd. Maybe they can explain you how they have made the thermal table mode (it's a really good feature in riva tuner the first graphic card overclocking application they made)... maybe ray adams can help you (Ati tray tool maker)... look in guru3d forum there's a section for all that application...
I think it can be a good start...


2011-06-22 13:08

reporter   ~0006257

Reading the GPU temp and fan RPM is fairly easy and it has been said many times, Alfredo wants to read it thorugh I2C, I guess for backward compatibility reasons.
I personally doubt that many people still use ATI cards that don't support those features on driver level.

Unwinder in RivaTuner (and consequently in MSI AB I guess) used I2C on nVidia cards, I wrote two or three plugins for RT of which one was for my then owned GPU.
The built-in plugin for LM63 used I2C to read temp, fan speed and fan duty cycle. It didn't work even though it had LM63, hence my own plugin.

Example board that allowed interfacing through I2C was reference Radeon X800.
There was also NVThermalDiode for nVidia cards, but I'm not sure if it used I2C.

Using I2C nowadays for AMD cards is pointless IMO, as all the cards provide required information throught driver, giving uniform interface regardless of the actual IC used on the card.

Everything is available in RivaTuner SDK which you get along with the RivaTuner itself. It's old stuff however, that's why I so strongly vote for AMD ADL SDK which is a walk in the park, 10 minutes and done.


2011-06-22 13:11

reporter   ~0006258

Besides, RivaTuner was open hobby project, MSI AB is commercial and closed and so Unwinder will not provide any info on it's source, I doubt he is even legally allowed to do so.


2011-06-22 14:14

manager   ~0006259

I will add ATI support in SpeedFan 4.45, after 4.44 Final will have been released.


2011-06-22 14:17

reporter   ~0006260

Wasn't that supposed to be in 4.44...? Que sera, sera; fingers crossed ;)


2011-08-26 14:44

manager   ~0006415

I have a beta that reads temperature and fan speed from ATI RADEONS.
If you want to give it a try, contact me at alfredo [at]


2011-08-26 17:34

manager   ~0006416

I just added fan control capabilities on Radeons.
It works great!


2011-08-26 18:05

reporter   ~0006417

It works!

Finally :-)


2011-08-26 18:36

reporter   ~0006418

Last edited: 2011-08-26 18:39

Awesome. Works great on my Asus HD6870. If I set it to 100%, it runs with almost 4000 rpm :)
It's almost as loud as a vacuum cleaner.

before I take control of the fan speed, Speedfan tells me it's at 15%. If I change it manually, there is no difference in rpm below 30%. The maximum I can bear to listen to is 40%, so that's for gaming.
I never understood why GPU manufacturers use fans with such high rpms.

Anywhere between 0 and 30% the speed stays at 1375 rpm.


2011-08-26 18:41

reporter   ~0006419

Last edited: 2011-08-26 18:45

Because it must have certain CFM but the diameter of the fan is restricted, so in order for the GPU not to fry itself before the warranty expires, they have to make a headroom (taking radiator fouling into account) in terms of the cooler performance, and the only option left is more RPM...

...or these are the only BLDC motors they can get in China for cheap ;)

BTW the fan speed is set through driver API, if the driver won't allow certain settings, there's nothing to be done about it in SpeedFan. It is very likely that the driver doesn't allow slowing the fan too much.

On my card "0%" actually means 1060RPM.

The VRM is also cooled by the air stream and I bet this is the main reason why they won't let you go passive. The core and memory would last, the VRM would not.


2011-08-26 18:51

reporter   ~0006420

I agree that some head room is required, but 4000 rpm seems a little overkill. It starts getting noisy at 40% already and anything above 50% would make me return the card ;-)


2011-08-26 19:23

manager   ~0006421

You are right: the driver has a minimum percentage. I thought it would have returned it when a lower value was entered, but that's not true. Anyway: I think that it makes little difference, because whenever you configure SpeedFan for automatic fan control you need to experiment a little to find the minimum and the maximum values to use.
Thank you for testing. I am glad to read that everything is working fine.
I will release the beta to the public in a few hours.


2011-08-26 19:54

reporter   ~0006422

Mine works in the same way, below 40% it's inaudible, 60% is loud and 75% is a helicopter.

It's not an overkill when you OC, the difference between 80% RPM and 90% RPM is exactly 1MHz more on the core 8-)


2011-08-27 12:04

manager   ~0006424

I just added voltage reporting.


2011-08-27 12:21

reporter   ~0006426

Last edited: 2011-08-27 12:25

You could add the GPU load as well, since there is CPU load in SpeedFan and there is such a feature in ADL SDK... :)

BTW does this work well with multi-GPU configurations (CrossFire and/or multicore - 5970, 6990)?


2011-08-27 12:35

manager   ~0006427

I will, in the future, but at the moment the CPU LOAD is not integrated with other sensors :-(


2011-08-27 12:37

reporter   ~0006428

Why would it be?


2011-08-27 12:46

manager   ~0006429

I mean that the CPU Load is not taken from the TCpuSensor class. I am working to add support for new sensor types to the base TSensor class. Obviously the only thing that slows down this change is the GUI :-)


2011-08-27 12:51

reporter   ~0006430

Yeah, there isn't much space to work with. But if you ask me, the init/status window (TMemo) at the top along with the "Minimize" and "Configure" buttons are the first things to say goodbye to...

Issue History

Date Modified Username Field Change
2010-12-20 15:54 norman02us New Issue
2010-12-20 15:54 norman02us Status new => assigned
2010-12-20 15:54 norman02us Assigned To => alfredo
2010-12-20 16:14 alfredo Note Added: 0005552
2010-12-20 16:14 alfredo Status assigned => acknowledged
2010-12-22 00:59 norman02us Note Added: 0005606
2010-12-22 01:12 norman02us Note Edited: 0005606
2011-01-21 03:13 nimbo123 Note Added: 0005708
2011-01-21 03:15 nimbo123 Note Edited: 0005708
2011-02-04 02:11 wlw_wl Note Added: 0005800
2011-02-04 02:13 wlw_wl Note Edited: 0005800
2011-02-04 03:13 wlw_wl Note Edited: 0005800
2011-02-04 03:38 nimbo123 Note Added: 0005802
2011-02-04 13:31 wlw_wl Note Added: 0005804
2011-02-04 13:57 wlw_wl Note Edited: 0005804
2011-02-16 00:09 wlw_wl Note Added: 0005852
2011-02-16 00:37 alfredo Note Added: 0005853
2011-02-16 01:16 nimbo123 Note Added: 0005854
2011-02-16 02:07 wlw_wl Note Added: 0005855
2011-02-16 14:39 alfredo Note Added: 0005863
2011-02-16 15:56 alfredo Note Added: 0005864
2011-02-17 00:11 wlw_wl Note Added: 0005871
2011-02-17 00:21 wlw_wl Note Edited: 0005871
2011-02-17 00:35 alfredo Note Added: 0005873
2011-02-17 01:11 wlw_wl Note Added: 0005875
2011-02-17 14:05 jonib Note Added: 0005878
2011-02-17 19:37 wlw_wl Note Added: 0005879
2011-04-03 04:07 wlw_wl Note Added: 0006012
2011-04-03 09:32 alfredo Note Added: 0006015
2011-04-03 12:33 wlw_wl Note Added: 0006019
2011-06-20 10:35 Thomas Note Added: 0006251
2011-06-22 11:17 alfredo Note Added: 0006253
2011-06-22 11:48 Thomas Note Added: 0006254
2011-06-22 12:50 el_sauvageon Note Added: 0006255
2011-06-22 13:08 wlw_wl Note Added: 0006257
2011-06-22 13:11 wlw_wl Note Added: 0006258
2011-06-22 14:14 alfredo Note Added: 0006259
2011-06-22 14:17 wlw_wl Note Added: 0006260
2011-08-26 14:44 alfredo Note Added: 0006415
2011-08-26 17:34 alfredo Note Added: 0006416
2011-08-26 18:05 wlw_wl Note Added: 0006417
2011-08-26 18:36 norman02us Note Added: 0006418
2011-08-26 18:39 norman02us Note Edited: 0006418
2011-08-26 18:41 wlw_wl Note Added: 0006419
2011-08-26 18:45 wlw_wl Note Edited: 0006419
2011-08-26 18:51 norman02us Note Added: 0006420
2011-08-26 19:23 alfredo Note Added: 0006421
2011-08-26 19:54 wlw_wl Note Added: 0006422
2011-08-27 12:03 alfredo Relationship added has duplicate 0001845
2011-08-27 12:04 alfredo Note Added: 0006424
2011-08-27 12:21 wlw_wl Note Added: 0006426
2011-08-27 12:25 wlw_wl Note Edited: 0006426
2011-08-27 12:35 alfredo Note Added: 0006427
2011-08-27 12:37 wlw_wl Note Added: 0006428
2011-08-27 12:46 alfredo Note Added: 0006429
2011-08-27 12:51 wlw_wl Note Added: 0006430
2011-08-28 11:07 alfredo Status acknowledged => resolved
2011-08-28 11:07 alfredo Resolution open => fixed
2011-08-28 11:07 alfredo Fixed in Version => 4.45 beta