OK, so I finally took a soldering iron to my GTX680 - and found that I changed the wrong resistor.
Which made me re-read these posts:
https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg202901/#msg202901https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg209227/#msg209227https://www.eevblog.com/forum/chat/hacking-nvidia-cards-into-their-professional-counterparts/msg207550/#msg207550It looks like there is an inconsistency in the findings, or at least an inconsistency in the way the ID numbers are set. Specifically, for the 4th nibble, the translation as per the first post works:
4th nibble, Resistor 2
5K = 0
10K = 1
15K = 2
20K = 3
25K = 4
30K = 5
35K = 6
40K = 7
4th nibble, Resistor 3
5K = 8
10K = 9
15K = A
20K = B
25K = C
30K = D
35K = E
40K = F
That's all well and good, but it seems like a waste of time since the bottom 5 bits (4th nibble plus the last bit of the 3rd nibble) can actually be changed by modifying the soft-strap. So the real juicy part is modifying the 3rd nibble since this is required to change the part of the ID that cannot be manipulated using only the soft strap. So you can go from GTX680 -> Tesla K10 by only changing the soft strap, but you cannot change to a K5000 or K2.
But - the 3rd nibble translation table does not appear to be the same (for resistors 1 and 2). Specifically, 3rd post linked above, from verybigbadboy, states:
Summary
GPU Name Resistor 0 / 3rd byte Resistor 1 / 3rd byte Resistor 2 / 8-f 4th byte Resistor 3 / 0-7 4th byte
GTX 660 ti none 25k none 20k
GTX 670 none 25k 10k none
GTX 680 none 25k none 5k
GTX 770 none 25k none 25k
tesla k10 none 25k 40k none
quadro k5000 40k none 15k none
grid k2 40k none 40k none
3rd symbol on K5000 and K2 is B; according to the original translation table, B should be:
Resistor 0: 20K resistor
Resistor 1: none
For the other cards listed the 3rd nibble is 8, which should be (5K, none).
Has anybody figured out what the full translation table here is?
I can sort of infer*:
25K=8
*30K=9
*35K=A
40K=B
but it is unclear why they are not set on the same resistor - and where exactly does the division fall between the two. I'm going to hazard a guess (and test when I get some 35K resistors) that it is resistor 1 that needs to be modified, but that is only a guess at the moment.