Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Olev

macrumors newbie
Jun 22, 2019
2
1
GND is everywhere. There is no separate GND for the gmux chip. The whole case is GND.
 

MacManDan

macrumors 6502
Apr 11, 2003
295
0
Any alternative locations for the TMS line? Some wiggling while checking connections seems to have yanked the pad straight off ...
 

dosdude1

macrumors 68030
Original poster
Feb 16, 2012
2,770
7,329
Looks like Pin 2 of R2016 should work, however this is a very small resistor, and will be difficult to solder to. It is located on the opposite side of the board as well.

Screen Shot 2019-07-23 at 1.01.45 PM.png
 

mirceac

macrumors member
Jul 27, 2019
31
20
Hello, just wondering if there's someone in Germany around Heidelberg that could loan me a Lattice programmer, the 4-6 weeks waiting time is killing me. Alternatively I can program a some Arduino to bit-bang the data but making it compatible with the Lattice windows drive is a PITA.
If anyone could help, please PM.
 

mirceac

macrumors member
Jul 27, 2019
31
20
@dosdude1 I've bitten the bullet and bought the programmer, any progress with the backlight control, I've seen in the Linux drivers for the gMux that the chip implements a number of registers with some functionality, if you like I can assist you with the basic state machine design and even a bit with the implementation.
Anyway, expect an order ot tow in couple of weeks, if the bloody programmer arrives by then and don't get lost in the German customs.
 

ibrahim monem

macrumors newbie
Sep 9, 2018
13
0
Egypt
Hi, dosdude1

do you have firmware gmux customize to enable uma . for this model MacBook Pro A1286 (820-2850) ?


or can do it by hardware like this ?

mbpro15_820-2915_nogpu-jpg.818750


thank you advance
 

AdamMagus

macrumors newbie
Nov 13, 2018
16
6
I purchased one of the dying light mods from you, does it work with this new fix or should I just wait for the next firmware update?
 

dosdude1

macrumors 68030
Original poster
Feb 16, 2012
2,770
7,329
I purchased one of the dying light mods from you, does it work with this new fix or should I just wait for the next firmware update?
Yes, it works with this fix, however if you'd rather wait until I get it implemented into the firmware, you can. I estimate it will take around 2-3 months.
 

AdamMagus

macrumors newbie
Nov 13, 2018
16
6
Yes, it works with this fix, however if you'd rather wait until I get it implemented into the firmware, you can. I estimate it will take around 2-3 months.

Thanks, DD. You have saved my machine. I barely used it after I got a MacBook air for travel. After sitting for about a year I fired it up and the GPU died. Right after the recall.
 

turnerfromdover

macrumors newbie
Jun 10, 2019
11
4
Have we got to resolder the programmer for the new firmware update you mention may be coming .
Also do we have to pay again
 

mirceac

macrumors member
Jul 27, 2019
31
20
So let me share the experience with deMux (WARNING LOONG WALL OF TEXT):

I've got a reasonable powerful MBP Late 2011 with I7, got it for almost nothing because the previous owner put the logicboard in the oven and got it out with a quarter fan spin (the board was trying to start, but once it activated the dGPU power supply it gets a short somewhere, shuts down and cycle repeats).
Because it was an old German technician, he at least took care of the screws and didn't destroy the connectors and the display cable, but the machine was dead in the water and he sold the HDD, RAM and charger and I've got the "cadaver" for very little.

So I inspected the board and the dGPU was cracked, he took care to wrap the board in alufoil and only let the dGPU exposed, but he didn't remove the silicone rubber holding the chip on the corners (frequent mistake) and examining it, it was really crooked a bit, not only cracked, no wonder the power supplies got shorted, the BGA balls were melted and joined.

So I removed the dGPU, wicked and cleaned the area, and for a good measure, removed also the resistor that enables the dGPU power supply.

Put everything together, found a 4GB RAM stick and some HDD, connected the charger and got the Apple startup sound, the keyboard got illuminated, but the screen was staying full black.

Looking at the available options, it was either removing the mux IC and soldering wires (nope, I'm good at micro soldering, but not THAT good and the clump of wires is looking miserable), get a mux hat (the previous dosdude1 solution) or a rather expensive EFI chip from Tiresias, or get the reasonably priced deMux solution, that was looking SUPER OK, EXCEPT for the bloody Lattice programmer that must be ordered from China and usually takes ages.

In a previous message I was asking if some forum member from Germany could loan me a Lattice programmer, no response at all, so I bit the bullet and ordered one myself from the deMux site link and to my amazed surprise it arrived today at noon, waaay earlier than expected. A huge storm started in the night and waked me up, so I went and ordered the flasher proggie for something like 18EUR and change, opened the MBP, and soldered the little adapter I've made from some 5cm very thin isolated wires soldered on a 6pin header where I've plugged the programmer leads.
TOTAL TIME: Ordering + soldering ca 15min.

Fired up my Windoze7 laptop, started the flasher program, it asked for license, got it, validated it and start the flashing process.
The progress bar moved up until the end when... CATASTROPHIC FAILURE, some msvcr110.dll not found, program could not continue, the classical windozian error message, ****, **** !!! I've looked again on the site and of course I was being lazy and because the flasher program started and seem to work OK, I didn't install the Visual Studio 2012 runtime as instructed and was bitten in behind :(.

So I've closed the flasher program hoping that the license key was not wasted, installed the required package, restarted the flasher and BINGO, all went perfect :) :) :), and the license become finally invalid !!!
Total install and (re)flashing: ca 10min extra.

Used quickly a dosdude1 Mojave patcher stick and installed the (almost) latest and greatest MacOSX and the result is in the attached picture, full success, except of course for the brightness control, the visual indicator appears on screen but nothing changes, we need to wait for DeMux 2.0 :).

In conclusion: if you have a soldering iron that is not a crappy POS and one of these "helping hands" device with a magnifying glass, the soldering is nothing special, if I, a half blind dude pushing 60, can do it without the slightest problem, you can do it as well. you just need to be patient and get some thin wires(magnet wire or whatever) because if you use the programmer original leads they are too thick and they will either produce short circuits or rip the pads.

In the final conclusion, THANK YOU Collins/dosdude1 for all your work and I hope my little bit of cash will contribute to get the full implementation with brightness ASAP.
Also if someone could point me in the meanwhile to the app store program that sets the brightness I'll be grateful.
Also again, if you're in Germany around Heidelberg, Mannheim and such, I have now a Lattice programmer that collects dust until the next version and I can do the whole flashing for a reasonable amount of Trinkgeld :), PM me if you want.

Cheers, sorry for the wall'o'text and my English is a secondary language.

IMG_20190806_231510.jpg
 

Analias

macrumors regular
May 13, 2019
134
47
I know we've touched on the subject before, but I have a customer with dodgy graphics on a 2012 retina 15" MBP. From what I can gather from the interwebs, apple's service program for the graphics problems covered 2011 15" and 17" MBPs as well as the 2012 retina 15" MBPs. So my question is can we flash the mux on a 2012 rMBP?
 

dosdude1

macrumors 68030
Original poster
Feb 16, 2012
2,770
7,329
I know we've touched on the subject before, but I have a customer with dodgy graphics on a 2012 retina 15" MBP. From what I can gather from the interwebs, apple's service program for the graphics problems covered 2011 15" and 17" MBPs as well as the 2012 retina 15" MBPs. So my question is can we flash the mux on a 2012 rMBP?
Retina machines don't have a defective GPU, but rather only bad solder joints on the GPU VCORE regulator IC (U8900). Removing the chip, applying new solder, and soldering it back on will completely fix the issue.
 

Analias

macrumors regular
May 13, 2019
134
47
Righto. So the 2012 rMBPs were a part of the same repair program, but for a different issue. I haven't inspected this mac yet, but I'll get it in and check it over. Thanks.
 

Raju pattathil

macrumors newbie
Aug 14, 2019
2
0
Recently, I figured out a very good solution to PERMANENTLY disable the dedicated AMD video card on a 2011 15"/17" MacBook Pro (MacBookPro8,2/8,3)! For those of you who don't know, MacBook Pros that utilize dynamic GPU switching between a dedicated GPU and integrated GPU use an IC known as the "gMux" chip. This is simply an off-the-shelf micro-controller, programmed with special firmware that switches active GPUs on-the-fly in a MacBook Pro system. This IC has 3 sets of LVDS lines connecting to it: The LVDS output lines from the dedicated GPU, the LVDS output lines from the integrated GPU, and the LVDS lines connecting to the connector for the display. In order to accomplish dynamic GPU switching, all this IC does is, when told to by the system, routes the correct set of LVDS lines to the display's LVDS output on the logic board.

In order to permanently keep the dedicated GPU disabled, there are 2 options:

- Option A, which will be detailed below, is to hard-wire the LVDS output lines from the integrated graphics straight to the lines connecting to the display.
- Option B would be to re-program the gMux IC (which is simply a Lattice LFXP2 FPGA), with a custom firmware to disable the GPU switching functionality. I may experiment with this in the future, but doing so requires special hardware that I don't have. This would, of course, be the optimal solution, though. EDIT: I have now done this, and it works perfectly! More details can be found by watching my video demonstrating my custom gMux IC firmware.

Performing the Modification ("Option A")

Before I get started with the explanation, I just want to make it clear this this is a VERY tedious modification, and requires precision soldering equipment. Use of a microscope is recommended.

To begin, here is a brief look at the schematic, and the main premise of this mod. In the following pictures, you can see how the LVDS data lines appear for both the integrated graphics output, dedicated graphics output, and the LVDS output for the display (EG for dedicated GPU, IG for integrated GPU, and CONN of course for connector). You can see how this data line corresponds with each set of LVDS lines. There are 12 total LVDS lines (6 pairs).

View attachment 777903 View attachment 777904 View attachment 777905

In order to perform this modification, the first thing that needs to be done is to remove the gMux IC. EDIT: Do NOT remove the gMux IC. After further experimentation, I found that leaving it in place will allow you to achieve full graphics acceleration WITHOUT flashing the system firmware at all. Simply proceed with the wiring, with the gMux IC in place.

Once the chip is removed and the pads are cleaned, each LVDS data line from the LVDS_IG side needs to be connected to its corresponding data line on the LVDS_CONN side. Of course, to do this, the use of small bodge wires is required. I used 0.1MM jumper wire (which can be purchased here). A wire needs to be used to connect each IG data line to its respective point on the CONN side.

Here is a wiring diagram that will help you do this very easily. This one is for a 15" machine, but I will update this post with the 17" one once I make it.

View attachment 779000

Once all the data lines are soldered properly, there are still a couple more lines that need to be soldered. We'll start with the clock lines. If you look on the schematic, you will notice that there is one set of clock lines on the LVDS_IG side (LVDS_IG_A_CLK), but 2 sets on the LVDS_CONN side (LVDS_CONN_A_CLK and LVDS_CONN_B_CLK). All you need to do in this instance is connect the A_CLK pair from the IG side to the A_CLK resistor pair on the CONN side. Then, simply connect the A_CLK pair to the B_CLK pair on the CONN side as well.

The next thing we need to do is pull the LVDS_DDC_SEL_IG rail high. To do this, all you need to do is connect the high side of this rail's pulldown resistor (R6982) to the PP3V3_S0 rail. I connected it to a capacitor near the backlight IC (C9711), as it was the easiest and closest source of PP3V3_S0 to that point of the board. This routes the necessary LVDS DDC clock lines to the integrated GPU.

The last few things we need to wire up are the enable rails for the LCD backlight and LCD panel power, as well as the PWM signal for the backlight. The first wire simply needs to bridge the following rails: LCD_PWR_EN, LVDS_IG_PANEL_PWR, and LCD_BKLT_EN.

The last wire will be used to wire the backlight PWM signal. The purpose of this signal is to control the backlight brightness level. Now, normally, the PWM signal is generated by the gMux IC. However, since the gMux IC is no longer in place, it cannot provide this signal (and even if you were to leave it in place, it still would not be able to provide this signal. I may be wrong on this, but feel free to test if you want.) As such, we will simply be wiring this rail to the LVDS_IG_BKL_ON rail. Unfortunately, what this means is that the backlight will remain at a fixed brightness, and be uncontrollable from the OS.

UPDATE: I have finished working on a new solution for backlight brightness control! You can read about, and see this modification in action here.

Finally, once all that is wired up, the system should be good to go! The final product will look something like this:

View attachment 777906

Last Step

After all your wiring is complete, you will need to cut power to the dedicated GPU, otherwise it will simply produce waste heat. To do so, all you need to do is remove the resistor that supplies power to the GPU VCORE regulator IC, R8911.

At last, once all that is complete, you are now done! You will now have a fully working 2011 15" or 17" MacBook Pro, running off ONLY integrated graphics! No OS X modifications are necessary, and it is not reliant on any NVRAM variable (obviously). This, short of making custom firmware for the gMux chip, is the BEST solution for rectifying the defective AMD GPU issue on these machines. The only issues are the lack of brightness control as mentioned earlier, and the external display port will not work. Other than that, though, everything works perfectly!

I have a video showing the mod in detail here.

View attachment 777910


Hi Friend,

I got something like this done from a service shop. The MAC working fine. But I used to connect the thunderbolt port to a 27 “ Thunderbolt Display, which is not working now. Is there any solution to get the Thunderbolt Display connection working again ? Thanks
 

mirceac

macrumors member
Jul 27, 2019
31
20
Hi Friend,

I got something like this done from a service shop. The MAC working fine. But I used to connect the thunderbolt port to a 27 “ Thunderbolt Display, which is not working now. Is there any solution to get the Thunderbolt Display connection working again ? Thanks

Well Raju, I've got bad news for you, you'll never be able to use the external display ever via that connector, the monitor outputs were connected to the dGPU chip directly and now that the dGPU chip is gone or disabled there is no way to replace them with the ones from the Intel integrated one because Apple being as they are they didn't route the output from the integrated GPU and there is no known way to tap them :(.
Some had different degrees of success using some adapters, but nothing conclusive that I know of, so for the moment the external monitor is out for these salvaged MBPs.
 

Raju pattathil

macrumors newbie
Aug 14, 2019
2
0
Well Raju, I've got bad news for you, you'll never be able to use the external display ever via that connector, the monitor outputs were connected to the dGPU chip directly and now that the dGPU chip is gone or disabled there is no way to replace them with the ones from the Intel integrated one because Apple being as they are they didn't route the output from the integrated GPU and there is no known way to tap them :(.
Some had different degrees of success using some adapters, but nothing conclusive that I know of, so for the moment the external monitor is out for these salvaged MBPs.[/QUOTE

Many thanks for the reply. Too bad that the big display will be now useless.
 

AndreiT

macrumors newbie
Aug 8, 2019
1
0
Thank you DosDude1 for working on this fix! I have recently fixed my 2011 machine and its working better than ever!

Also to anyone who doesn't want to solder on the wires again whenever a brightness fix comes out, I was able to tuck the wires away under the case just fine. That way the soldered on wires are ready to go whenever a re-flash is necessary!
 

chaosdesigns

macrumors newbie
Sep 19, 2008
9
0
That solution will require you to repeat the whole process every time you do an OS update, and when you reset the PRAM. It also requires that all AMD kexts be deleted from Mac OS. Yes, it works, but it is not a permanent solution like this is.

Can you post details on how to accomplish the software fix for this?

Thanks
--Chaos
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.