Hey guys. What a wild ride this was. I have been reading this thread for months now and finally bit the bullet and ordered everything needed a month ago.
I used the black long Sintech-C adapter, a Samsung Evo 960, this J6100 board and a CH341A programmer for my late 2013 rMBP 15". I've got everything working now, but I wanted to note a few important caveats in case anyone else stumbles upon similar problems later:
To get your system to be recognised at all what worked for me was:
I have got everything working perfectly now. Major thanks to @gilles_polysoft for basically kickstarting this whole project, to @dosdude1 for saving my day, to @ohnggni for his instructions and every other helpful poster around here. We've got a good thing going here and who knows, maybe Apple will even listen to us someday and update the bootroms themselves.
I used the black long Sintech-C adapter, a Samsung Evo 960, this J6100 board and a CH341A programmer for my late 2013 rMBP 15". I've got everything working now, but I wanted to note a few important caveats in case anyone else stumbles upon similar problems later:
- My J6100 board came without a status LED. That threw me off for a bit, because all the photos of it here had one attached. It's not really much of a deal, you don't need it, but I still found it worth mentioning
- Definitely backup your bootrom using ROMTool by dosdude before you do anything! Don't assume that the backup you do before flashing will be a good one! It literally saved my machine! I tried to roughly follow these instructions by ohnggni, but the CH341A software always recognised my machine's chip as something unknown. I stupidly assumed there would not be much of a difference in terms of chips between those macbooks and manually set the manufacturer and chip to those shown in the post. The worst part was that when I test read the bootrom it looked very much like the backup I did using ROMTool so I assumed it was working, when in reality the dump was totally corrupted. The writes were corrupted, too (obviously, in hindsight, as it's a completely different chip). While trying to write my patched bootrom it totally messed the data up and my machine did not boot anymore.
- I was clueless on what to do for a few hours. I knew I probably had a good backup using ROMTool, but I had no idea how to write it using the CH341A programmer software. Turns out, you just can't. It doesn't know the chip, so it can't communicate with it (was using version 1.29, so pretty recent if not the newest one).
- What finally saved me was flashrom on macOS (Linux systems would have probably worked, too). When trying to read the chip using flashrom it instantly recognised it and when writing my backup (and later on the patched bootrom) it did so and verified it without any errors.
- TL;DR: Use flashrom on macOS/Linux instead of the CH341A programmer software. You might be lucky and have your chip recognised by the latter or you might mess up badly with the data on your chip. flashrom has much better compatibility.
To get your system to be recognised at all what worked for me was:
- Disconnect battery and power
- Connect CH341A to second system
- Connect J6100 port
- Connect battery
- Connect power (fans will start spinning)
- Disconnect power
- Disconnect battery (fans will stop spinning)
- Try to dump/write using flashrom/whatever
I have got everything working perfectly now. Major thanks to @gilles_polysoft for basically kickstarting this whole project, to @dosdude1 for saving my day, to @ohnggni for his instructions and every other helpful poster around here. We've got a good thing going here and who knows, maybe Apple will even listen to us someday and update the bootroms themselves.