BIOS editing Sapphire R9 290

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
I've got some 290s to play with, and the first once I've put through testing is a Sapphire R9 290. You know, good ol' blower and all that.

It runs hot as hell. Hot enough to throttle at default settings while doing some mining. Much of the problem is the case it's in right now . . . it'll be in an open-air setting later which will hopefully make it run cooler.

So I tried software tweaking it with MSI Afterburner. Everything worked except tweaking VDDC. I could tame it with lower power limits and custom fan profiles (requires 70% fan minimum and -40% power limit), but the thing would run like ass (22-24 MH/s Ethereum). So I tried some BIOS editing via ATIWinFlash and HawaiiBIOSReader with some success.

Lowering the VDDC worked. GPUz detects an idle VDDC of .891 and a load VDDC of .922(!!!) even though my target load VDDC was 1.000v, not sure why it's reading so low. Of course the idle VDDC was supposed to be .900 so whatever. Regardless it's 99% stable at stock clocks with those settings. I can keep it below 90C with 70% fan utilization or higher, and it is doing 25-26 MH/s. But it's marginally unstable, so it has to be run at around 930-935 GPU clock to avoid locking up the miner after maybe 12 hours of run time. It still does close to 25-26 MH/s with that setting. I'm quite content with that.

BIOS editing hasn't helped with GPU clocks . . . no matter what I put in the BIOS settings, it always defaults to 947 MHz GPU clock. I have also been unsuccessful using HawaiiBIOSReader to alter the default fan profile. So I'm dependent on software controls to get the thing running within acceptable thermal limits and at a stable clockspeed. That will be a problem if I ever move it to a Linux rig for regular duty.

You can see the current BIOS here using HawaiiBIOSReader:

https://www.dropbox.com/s/s9diyqeqdjv9qb4/sapphire-290-undervolt.rom?dl=0

Am I just gonna have to go full-blown hex editor here? I've read instructions on how to do that, but it seems like HawaiiBIOSEditor is changing the same stuff as in the instructions.
 

EXCellR8

Diamond Member
Sep 1, 2010
4,029
868
136
I don't have too much experience with tweaking BIOS on cards but I'd be careful when fiddling with power controls. The 290 and 290X run hot out of the box, and the reference cooler design is just not suitable for them.

You would be better off just replacing the coolers over tweaking the BIOS. Apply some better thermal paste and call it a day. My 290X is quite happy with a full cover waterblock, but a dual fan air cooler would suffice.
 

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
BIOS editing has gone fine thus far, and it's common practice for miner cards that run under Linux. I'm just a bit flummoxed as to why the tweaks to GPU clockspeeds and fan controls haven't done anything to the card's behavior. Might be that HawaiiBIOSReader has flaws.
 

.vodka

Golden Member
Dec 5, 2014
1,203
1,537
136
If you have reference 290/Xs you could try The Stilt's MLU BIOSes, he's tweaked them for improved efficiency / VRM temperatures / tighter memory timings for gaming and also come with a fan curve that's ideal for the reference blower model. I used the bios reader to edit the fan curve back to the 290 Tri-X's default curve.

My 290 Tri-X works just fine with the 1075/1375 +25mV (mine comes with a 25mV overvolt by default). If you flash a tweaked BIOS, remember to reset any overclocking tools like afterburner / overdrive to defaults before and after flashing.


If you're mining with these, there are other builds prior to these I've linked that in addition to proper memory timings, also disable some ROPs and other parts of the GPU for better efficiency.
 

repoman0

Diamond Member
Jun 17, 2010
5,092
4,374
136
I've got a Gelid Icy Vision GPU cooler with the associated R9 290 cooling kit if anyone wants it for cheap. It runs a bit cooler than my MSI stock cooler, which is much better and quieter than reference. I run the card at 1050 MHz with a small negative voltage offset and it runs low 80s mining in a case with a couple 5V fans and pretty quiet. I switched back to the stock cooler because the Icy Vision cooler doesn't have GPU fan control (plugs into a MB header or molex).

I don't want to throw the cooler away so someone take it!
 

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
If you have reference 290/Xs you could try The Stilt's MLU BIOSes, he's tweaked them for improved efficiency / VRM temperatures / tighter memory timings for gaming and also come with a fan curve that's ideal for the reference blower model. I used the bios reader to edit the fan curve back to the 290 Tri-X's default curve.

I'll consider experimenting with those, thanks!
 

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
I dropped my reference 290 temperature by 5-7c just by swapping to NT-H1 thermal paste
 

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
Interesting. Do reference 290s have any exposed aluminum elements in the stock blower cooling solution? I've got some CLU lying around here, and I'm also itching to try that Thermal Grizzly Conductonaut which supposedly has a W/mK of 73. That's indium solder level right there.

btw, I did try The_Stilt's BIOS package. It works on two of my cards - a Gigabyte and the Sapphire that has a BIOS that isn't locked. It made very little difference that I can tell, but it certainly didn't hurt anything. The Sapphire card, which is the problem child, is maybe 2C cooler with the new BIOS.

My next task is to try and sort out a solution to the problem of the Sapphire card with the locked BIOS. I can't read or flash the ROM by any means. I'm considering shorting pins 1 and 8 on the BIOS chip with a wire bridge to see if I can do an unlock with ATIflash/ATIWinFlash.
 
Last edited:

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
I did manage to unlock the "problem" Sapphire card. I tore up an old IDE PATA ribbon cable, stripped a wire off of that, and cut it down into a tiny lasso with little exposed copper ends to connect pins 1 and 8 of the BIOS chip that's exposed on top of the PCB (the one that isn't under the cooler). Then I used ATIWinFlash to unlock it:

Code:
atiwinflash -unlockrom 1

(the card is in PCIe position 1 on my system)

Then I powered down, removed the lasso, powered back up and flashed the card with the same undervolt BIOS (based on one of The_Stilt's modded BIOSes) that I used on the working Sapphire. It took and it is now undervolted out the yin-yang, but it's still overheating. That cooler must have a serious TIM problem under the hood.

That only fixed one BIOS (the other one is still wonky) but at least now I can tweak the thing.
 

Killrose

Diamond Member
Oct 26, 1999
6,230
8
81
I bought a brand new Zalman vf300a on ebay for cheap. I only had to add a small spacer/washer under each mounting stud to get the correct gpu to pcb mounting height, as these are made for hd 5800 series cards.

works like a champ, was dirt cheap, but does take up a lot of space/3-slots. the blower, no matter what you try is a bad joke. wtf were they thinking?

I did get a lower avg temp by replacing therm material, which no doubt helped throttling when I was using std blower.
 
Last edited:

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
Yeah I'll be replacing the TIM on both (and thanks to repoman0 I'll be replacing the cooler on one. Might look into that Zalman cooler too, good idea. Did you have to do anything special for the RAM chips, or did the cooler accommodate those as well? I know the Gelid Icy Vision requires a 290/290x kit to handle those things. And some thermal tape.
 

Killrose

Diamond Member
Oct 26, 1999
6,230
8
81
I first used the Zalman alone with-out any heatsinks because I was waiting on tim materials for both memory and vrm. Compared to the stock setup performed excellent. went from gpu temps in the 90's to 70's under extreme load. VRM temps dropped bigtime even with-out heatsinks. I think the VRM1 which powers the GPU went from in the 90's to low 80's. This was with the fan controller (included with the VF3000a) was set to just above the lowest setting.

The cooler comes with some mem heatsinks(8) but not enough for a 4gb mem card, but yeah, it accomodated heatsinks no prob. And you can mod the VRM heatsink it comes with by removing material, ect. Which I did initially. With a heatsink on the VRM1 it dropped the temp dowm into the low 70's under load.

I ended up removing the origional heatsink assy from the mounting frame it is sweat soldered to so that I could use that to strengthen/support the PCB of the video card, because these cards are long and if you flex them your going to pop a small component off them, or crack a solder joint. I had to mod the frame to accomodate the VF3000a mounting studs,ect and I mounted some larger heatsinks in the area of the frame above the mem chips instead of using traditional mem heatsinks I used 25x25x10mm ones.

blah,blah,blah. After it was all said and done I am running the card 1050gpu 1395mem and my temps on the GPU are in the 68-72temp range under a decent load and the VRM1 temp stays at about the same range. VRM2 temp is in the 35-38temp range. This is with the fans running just above the lowest setting and silent.

It was quite abit of work, but I am so happy with the way it came out. The card which is a reference AMD/Gigabyte branded and it was a previous bitcoin miner I bought for $175 off craigslist.

I have a crap load of pics that I need to post somewhere on pretty much the whole afair except for the removal of the heatsink which is sweatsolderd to the frame. I propane torched mine off in less than 10min.
 

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
Pics would be great. Not sure if I'm up to that much modding but it sounds like you fixed some major overheating issues. Glad the reference Gigabyte 290 I got wasn't such a furnace!
 

DrMrLordX

Lifer
Apr 27, 2000
22,528
12,402
136
I dropped my reference 290 temperature by 5-7c just by swapping to NT-H1 thermal paste

Glad you mentioned that. I finally got around to replacing the TIM on the less-problematic of the two Sapphire cards in my possession . . . the one that didn't have an unreadable BIOS and that wasn't completely incapable of running without throttling.

The first thing I noticed after I got off the cooler was that some little . . . doodad (a resistor?) just popped off on its own, like it didn't want to be on the card anymore. It was on the underside of the PCB in a spot labeled C105 (I think) right next to the PCIe 1x segment of the pinout. It's gone now and I have no idea why it came off the board.

The stock TIM was crusty, and it seemed to have inadequate coverage on the die. So I busted out the CLU and went to work on that.

The result? I can now run the card at 1075 mhz GPU/1250 mhz RAM while mining and it won't go over 72C. Sweet. The ASIC quality on this card is 77.5% too, which is quite interesting.

Sadly the card's sensors are all b0rked at idle, and you can't read the BIOS at idle either. You CAN read it at load which is damn peculiar. Probably something to do with the doodad that fell off the board.

edit: spoke too soon. I was mining with the card at 1100 MHz GPU and it locked up. I rebooted and now you can read the card's sensors at idle, but it can't actually do anything: no mining, no nothing. I wonder what was that thing that fell off the card? Apparently it's a capacitor . . . and people who've had the problem of a blown cap @ C105 have reported no repair option? Ugh!

edit edit: I reflashed the BIOS to something with a low stock clockspeed and it's happy again. Not sure what the problem is . . . might be something to do with using The_Stilt's special BIOS? Anyway, using the stock BIOS, it's fine again. I'll have to do more tweaking later but at least now I know I can get it working.
 
Last edited: