Jump to content
EwinRacing Flash Series Gaming Chairs
TerminX

Y580 fan control

Recommended Posts

Has anyone figured out which EC (embedded controller) registers control the fan on this thing? I flashed the unlocked BIOS in svl7's thread in hopes of the thermal control options having some effect, but no go--they do nothing. So, I'm attempting to figure out which EC registers control the fan speed so I can control it directly. It looks like register 06 holds the current fan speed, register AB seems to be part of the determination in whether the fan speed is automatically controlled or not, and register 01 changes from 85h to 01h to 03h when I start the fan dust extraction function in the Lenovo energy management software (and then reads 00h for a split second before reverting back to 85h when the dust extraction is complete). Register AB changes from 08h to 00h when the dust extraction is running and manually programming the value as 00h seems to stop the fan speed from changing MOSTLY, but it still trickles downward slowly (no automatic speed increases at all with a value of 00h in AB).

However, I have not yet found which register to write in order to actually set a fan speed myself after disabling the automatic speed adjustment. Can anyone help? Once this is figured out we will be able to control the fan speed using the generic NoteBook Fan Control utility found at http://sdrv.ms/P6RKKe. :)

I've looked around for any information I could find on the subject and have come up empty handed. I've also checked out the source code for the ideapad-laptop module in Linux to see if any of the EC offsets used there were relevant to the Y580, but that was a no go as well.

Share this post


Link to post
Share on other sites

I have the y580 and am looking for the same as well. We know the fan can be controlled by software and that it does not normally run at full speed except for the dust extraction mode, but I cannot figure out how to control it either. If you want I could probably do some data sniffing / oscilloscope tracing when I take the computer apart to repaste the cpu/gpu. to try and find the part # of the fan controller chip. Then we can find the datasheet and controls for it, but otherwise sniffing in the way you did is our best hope. What program did you use by the way? I have been unable to even get that much out of the computer via software so far.

Share this post


Link to post
Share on other sites
Has anyone figured out which EC (embedded controller) registers control the fan on this thing? I flashed the unlocked BIOS in svl7's thread in hopes of the thermal control options having some effect, but no go--they do nothing. So, I'm attempting to figure out which EC registers control the fan speed so I can control it directly. It looks like register 06 holds the current fan speed, register AB seems to be part of the determination in whether the fan speed is automatically controlled or not, and register 01 changes from 85h to 01h to 03h when I start the fan dust extraction function in the Lenovo energy management software (and then reads 00h for a split second before reverting back to 85h when the dust extraction is complete). Register AB changes from 08h to 00h when the dust extraction is running and manually programming the value as 00h seems to stop the fan speed from changing MOSTLY, but it still trickles downward slowly (no automatic speed increases at all with a value of 00h in AB).

However, I have not yet found which register to write in order to actually set a fan speed myself after disabling the automatic speed adjustment. Can anyone help? Once this is figured out we will be able to control the fan speed using the generic NoteBook Fan Control utility found at http://sdrv.ms/P6RKKe. :)

I've looked around for any information I could find on the subject and have come up empty handed. I've also checked out the source code for the ideapad-laptop module in Linux to see if any of the EC offsets used there were relevant to the Y580, but that was a no go as well.

I just started messing with my unlocked Bios last night, and I saw that enable one thermal device in Chipset Configuration (it's called "Device 4").

After enabling it, it showed up as an unrecognised device in Windows, and after looking through it, I found out that it is Intel Dynamic Platform & Thermal Framework device (which should be used to control fan speeds) :D.

Unfortunately I was unable to find the correct driver for it. I tried some for Lenovo Yoga Pad, some from Dell and Asus, but they didn't work. It recognised the device and installed the driver, but it wouldn't turn on the device (at least that's what it said in Device Manager) :(.

Share this post


Link to post
Share on other sites

isn't there any way to force full fan-speed of the Y580?

e.g. in flashing procedure the fan spins at full speed... isn't there a way to get the fan in the same mode?

Share this post


Link to post
Share on other sites

There's definitely a way, but what's the point? The fan will run at maximum speed when the CPU or GPU reach certain temperature. Running at full speed won't decrease your max temps. All it will do is it will heat up slower.

Share this post


Link to post
Share on other sites

thats the point :D it will heat up slower...

i would like to find it out....

also found the register in the EC to turn of the automatic fan speed change... but couldn't find out yet how to change the speed manually :D

Share this post


Link to post
Share on other sites

That won't make much difference. Start a benchmarking application or something like that and notice when the fan kicks in. It's less than a minute. It doesn't change the efficiency of the fan and radiator, so it will reach the same temperatures maybe like 30 seconds later?

Share this post


Link to post
Share on other sites
There's definitely a way, but what's the point? The fan will run at maximum speed when the CPU or GPU reach certain temperature. Running at full speed won't decrease your max temps. All it will do is it will heat up slower.

That's not true, the y580 fan never runs at full speed. If you want to check as well whenever I'm gaming and the GPU is under full load 100% I go to the dust extractor and turn it on, the fan then spins even faster and the loudness goes up. Check it yourself.

  • Thumbs Up 1

Share this post


Link to post
Share on other sites

Have you ever considered that maybe during gaming it's running at 100%, and during dust extraction it goes like 110%? Every fan has a bearing which wears down. My guess it can run on the highest speed only for a certain time. It's a guess, so you might as well be right, but I wouldn't do it anyway. I don't have any problems with overheating. If I don't have problems with overheating, then no Y580 should have any problems with overheating. If you do have problems with Y580 overheating, then something is not right. My bet would be thermal paste.

Share this post


Link to post
Share on other sites
If I don't have problems with overheating, then no Y580 should have any problems with overheating.

What's so special about your Y580 that makes you say this?

Us Y500/Y510p/Y400/Y410p owners have also been looking for the same thing, which is for the fan to be able to spin up as fast during gaming/benchmarking as it does during Dust Removal in Energy Management. As far as I can tell, nobody has been successful with this on any Lenovo laptop so far.

As a Y500 owner, I'm definitely interested in this just as much as you Y580 owners are. It would go a long way toward alleviating the overheating issues with this machine, which are even worse than what you guys experience. Repasting and cooling pads are not cures in some cases because it is an inherent design flaw with the cooling system, resulting in quite a few documented cases of people performing cooling mods of various complexity.

  • Thumbs Up 1

Share this post


Link to post
Share on other sites
Have you ever considered that maybe during gaming it's running at 100%, and during dust extraction it goes like 110%? Every fan has a bearing which wears down. My guess it can run on the highest speed only for a certain time. It's a guess, so you might as well be right, but I wouldn't do it anyway. I don't have any problems with overheating. If I don't have problems with overheating, then no Y580 should have any problems with overheating. If you do have problems with Y580 overheating, then something is not right. My bet would be thermal paste.

ok in this point you could be right... it really could be that the dust-extraction is faster than the fan normally should be, a ''override'' or how that is called

my temps are nice :) gpu goes never over 80°C with a 1,2ghz core and 3ghz memory clock and my steady-voltage mod, which makes the card always stay at 1,1 V for maximum stable clocks...

but cpu-demanding games like bf3 with 64 player in multiplayer make my 3630qm sometimes reach 90 °C, because i run it with throttlestop (3,2 ghz on all cores :) )

thats why i have to run cpu-demanding games at 3 ghz or even without throttlestop..

i just like low temperatures thats why i thought about the fan-mod :D

Share this post


Link to post
Share on other sites
What's so special about your Y580 that makes you say this?

Most powerful Ivy Bridge mobile processor within 45W TDP group, both overvoltaged and overclocked GPU to the limits and over the spec RAM. All Y580 have the same thermal design I guess it is safe to assume, that if I don't have overheating issues, then no Y580 should have them.

Share this post


Link to post
Share on other sites
Most powerful Ivy Bridge mobile processor within 45W TDP group, both overvoltaged and overclocked GPU to the limits and over the spec RAM. All Y580 have the same thermal design I guess it is safe to assume, that if I don't have overheating issues, then no Y580 should have them.

Well there are manufacturing defects to be taken into account, for example bad paste jobs and loose/uneven heatsink mounts, especially in a consumer line such as IdeaPad where tolerances aren't as tight. And don't the i7-37xxQM and 38xxQM run similar to or cooler than i7-36xxQM due to binning? Don't quote me on that one, I read it from somewhere else.

And I believe it is not the GPU that is overheating but the CPU. For example schranzmaster is running his GPU at similar speeds to yours without issue but he has to reduce his CPU speed in CPU-intensive games because otherwise it gets to 90C in titles such as BF3. Certainly if he could reduce that temperature, he could run his CPU at full speed in games without fear of throttling or thermal shutdown.

When I first got my Y500, the i7-3630QM ran at around 100C in BF3 and even shut down on me a few times when it tripped 105C. Needless to say, that was unacceptable. After repasting and getting a good cooling pad, I dropped CPU temps by 15C and felt much better about using ThrottleStop to get 3.2 GHz on all cores. But when I played BF4, I discovered that its CPU demands are even greater than BF3, pushing temperatures 5-10C higher. With my CPU running close to 100C once more, I started getting nervous again. But now, I can't do anything about it. I won't mod my laptop, and I won't reduce CPU speed because I lose FPS. So my best and last hope for getting the cooling I need is to increase fan speed.

Share this post


Link to post
Share on other sites

That's exactly what I was trying to say. If my Y580 does not overheat, then that means whenever there's Y580 that is overheating, then obviously there's some kind of issue. Usually bad thermal paste job as you have noticed.

It's hard to tell whether it's related to binning, but my guess would be that under load they should generate around equal amount of heat. If 3630qm is binned, then it is safe to assume it runs hotter at the same frequency, which is why it's running frequency has been lowered. On the other hand 3840qm does run faster, so I'm sure it generates at least the same amount of heat under load. I do not know how much temperatures can vary depending on manufacturing quality.

Share this post


Link to post
Share on other sites

Hello guys, it's me again.

I just tried again to figure out, which values are for the control of the fan... I noticed that no adjustment made any effect... except for one value. I can turn on/off the automatic fan control... But if I turned it off, the fan just stayed off and I couldn't change anything

except turning the automatic fan control on again

Here is a screenshot of what I found out with RW-Everything

post-10385-14494997372067_thumb.jpg

-all red marked values are changing under normal use of the Y580 (I could assign some of them)

-the red marked in the blue bounded values only appear when the battery is plugged in

Maybe somebody has an idea what I could do now?

Any experts concerning the embedded controller?

Is this a type of ''locked EC''? because no changing did take effect expect for the one mentioned above

Edit: informations I found in RW-Everything:

[Cooling Device] (Type 27)

1B 0F 34 00 FF FF 63 00 00 00 00 00 D0 07 01 43 ..4...c........C

6F 6F 6C 69 6E 67 20 44 65 76 69 63 65 20 44 65 ooling Device De

73 63 72 69 70 74 69 6F 6E 2E 00 00 scription...

Type....................................... 0x1B (27)

Length.....................................0x0F (15)

Handle.................................... 0x0034 (52)

Temperature Probe Handle.....0xFFFF

Device Type and Status......... 0x63

Cooling Unit Group..................0x00

OEM-Defined.......................... 0x00000000

Nominal Speed........................0x07D0

Description String1 - "Cooling Device Description."

Share this post


Link to post
Share on other sites

I always wondered why the fan never went full bore during gaming. My 580 has been very hot and I was wondering if running the dust removal program during gaming would be a simple work around to at least keep fan speeds high. hmm

Share this post


Link to post
Share on other sites

I experimented with the RW-Everytning and Notebook Fan Control. Fan speed control register 95. The data on the fan speed can be read from the register 06. Fan notebook has 3 stages of work: ~63% (less than 65 ° C), ~83% (more than 65 ° C), 100% (more than 80 ° C). Attached is my configuration file Notebook Fan Control for Lenovo Y580. Perhaps someone will be able to understand in more detail in this issue. Sorry for my English)))

Lenovo IdeaPad Y580.xml

Edited by IL_DECAMERON
New config file

Share this post


Link to post
Share on other sites

I have checked the configuration you suggested, and it lets us configure the speed, but it doesn't let us reach the highest fan speed (this way we can only reach 82.5% of the fan speed, while the full 100% is reserved only for dust extraction).

 

The highest fan speed is locked, and can only be unlocked when we start the dust extraction tool (through some boolean value), as you can see in this dll file from Energy Management software (LenovoSDKEmSubSystem.dll), as u can see in the attached image. Maybe some of you will know what to do with this, because I have no clue :D

 

SI57QsA.png

Share this post


Link to post
Share on other sites

Unfortunately I also did not reach the maximum speed ... The fan speed is controlled by PWM. With my settings when running clean from dust using Lenovo Energy Management, Notebuk Fan Control shows the fan speed is 120%. So maybe it should be?

Share this post


Link to post
Share on other sites

Looking further into LenovoSDKEmSubSystem.dll would we be able to call the function "SetHighSpeedOfFan" outside of the energymanager dust removal program leaving it constantly on?

Share this post


Link to post
Share on other sites

To do this, you need to know the values of any controller registers changes Energy Management ... Unfortunately I have no experience in programming. Perhaps the datasheet of the controller will be able to clarify the situation. KB9012QF controller. Datasheet file is too large to attach to the forum.

Share this post


Link to post
Share on other sites

Looking through the datasheet, I found a burst enable bit in the EC (take a look at pages 167 and 168) that is probably used to enable the high speed of fan.

 

Just need to figure out how to use it now :D

Share this post


Link to post
Share on other sites

Registers on pages 167 and 168 is likely to relate to the clock generator (PLL).

Edited by IL_DECAMERON

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.