Important Notes:
I am using Windows 10 Home 64-bit on a Lenovo Legion gaming laptop. Nothing specialized here, computer-wise. A laptop is preferable since you'll need to do some in-car coding.
The donor instrument cluster MUST have fewer miles than your car in order to use this process.
I bought a cluster from a manual M3, and installed it into a manual 128i. Please do not ask how to install in an automatic, because, I have no idea. I'd assume the process is much the same (it's probably exactly the same, since NCS Expert really does all the footwork for you).
All software below is what I used, and had success with. It's reasonable to assume that it'll work for you, too. If it doesn't, google is a wonderful tool that fixes issues for lots of people (myself included).
You should have a basic understanding of NCS Expert and how it works.
Materials for Coding the New-to-You Cluster:
-R270+ Programmer (like this one)
-SOIC8 Testing Clip (like this one)
-Used Instrument Cluster (This process requires that it has less miles than your car; easy for me, with 196k miles when shopping for M3 parts)
-T10 Torx screwdriver (only necessary for M3 clusters)
-Install R270 Programmer Software (this download is clean, I wouldn't recommend using the disc included with the programmer, RUN SETUP.EXE to install)
-Install HxD hex editor (here)
-Mike's Easy BMW Tools (this is what works for me)
-K-DCAN Cable (this one works for me)
Preparing for Coding:
Make sure all the necessary software has been installed, and that the programs launch correctly. Test the BMW tools by launching INPA and verifying that it's connected.
You'll first need to open-up your new instrument cluster. On the M3 clusters, there are four silver T10 screws on the back that you'll need to loosen before attempting to hulk the thing apart. After those screws are out, work your way around the cluster, popping each of the 6 retainers (2 top, 2 bottom, 1 each side) and slowly pull the two halves apart.
Now, you need to pop the gauge needles off. For this, I recommend cutting out a four-inch square piece of paper, and then cutting a ~2mm-wide slot, about 2 inches long, starting mid-way on one of the sides and going to the center of the square of paper. Now, fit this square of paper underneath the needles, and above the gauge dial. The slot is supposed to let you slide the piece of paper underneath both needles (speedo and fuel, or tach and oil temp) and around their pins so that it protects the dial (they scratch easily). To pop the needles off, I recommend a very thin fork that'll fit around the pins. Just work it under the needles, and gently pry upwards. Shoot for the most vertical motion possible, with as little twisting as possible. If you snap the pins that hold the needles, you pretty much have to scrap that cluster. In a pinch, a thin, flat-blade screwdriver works just fine. Set the needles aside in a safe place after you're done playing with them (we all do it).
This is a tricky one to explain, but here it goes: You now need to flip the cluster over to the black plastic side. You will see a rectangular 18-pin connector (it's the only connector, but I'm trying to be detailed). You need to push downwards on that connector (towards the bottom of the cluster assembly) push it out so that the white plastic part pops out a little, then press the opposite direction on the side that didn't pop out, and kinda wiggle the thing apart. The end result will be a large piece of black plastic, and then the white plastic part with the now exposed backside of the circuit board.
Now, separate the white plastic from the circuitry by releasing four little clips (2 on top, 2 on bottom). For 1-series clusters, you will need to also detach the ribbon cable attached to the LCD panel. Simply disconnect it from the long white connector at the bottom of the circuit board. Now, you can clearly see the brains that make your instrument cluster tick, there's far more going on than you'd think, a far cry from old cars (which makes our jobs super easy).
You are now ready to do the first part of coding.
Clearing Old VIN from EEPROM:
Pull out your R270+ and your SOIC8 test clip. Find your EEPROM. It is an 8-pin chip (four on a side). On the M3 cluster, it is just above the left corner of the LCD display (as shown in the huge picture below). The clip I used (link above), has a pink wire denoting Pin 8. If you look at the text on the EEPROM, correct side up, Pin 8 is on the bottom left of the chip.
Ensure everything is plugged-in and connected. Launch the R270 programmer application, select which chip it is (printed on EEPROM). All three clusters I've seen had 080D0WQ chips, but verify yours because they can be different. Hit "Read" ignore the obnoxious beeps from the programmer box, and save the .BIN file to your desktop (you can save it anywhere, really). Now, close the R270 program, and open HxD. Open the .BIN file. Scroll down to the -2E0 line, and highlight all data in that line, and replace it with FF's. Line -2E0 should read "FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF" when done (you could copy that and paste it into HxD, too). Save the .BIN file, close HxD, and open the R270 app again. Load the .BIN file, then verify the selected chip, and hit write. This process will take about a minute, and there will be lots of beeping.
The programmer comes with just the red board. The clip comes with two adapters, I used the black one with the keyed connector for the clip itself and simply inserted it into the pin holes next to the ZIF socket. (Pic attached)
Once finished, you are done with this part of the install. Disconnect the programmer, and, minus the needles and front cover (part with clear plastic), reassemble the cluster. You should ONLY have the back black plastic part, circuit board, and white plastic part put together.
Coding Cluster to Car with NCS Expert:
After you're done being extremely happy that you did a computer thing, go out to your car with your half-cluster and your needles.
I would disconnect the negative battery lead for this part.
Remove your original cluster, there are two torx (T15??) screws at the top of the hood. Remove those, then use a thin flat-blade screwdriver to push the top of the cluster downwards, then pull the cluster out. Undo the connector on the back (there's a latch mechanism, so be aware of that).
Now, connect your new-to-you cluster, and THEN reconnect the battery, if you disconnected it.
Open your computer, turn the ignition on (door closed, engine not running, climate control unit should turn on). Connect your K-DCAN cable and verify communication with INPA. Open NCS Expert, load "Default profile" (Mike's Tools). Hit "VIN/ZCS/FA" then hit "ZCS/FZ f. ECU" and select "E89" for chassis, then "CAS" for module. Give it a second to fill VIN and VO fields. Hit "Back" then hit "Process ECU" select "KOMBI" and hit ok. "Change job" to "SG_CODIEREN" and the "execute job." It will take a couple seconds and there will be beeping and weird noises. Once done, your new cluster is coded to your car's VIN, and will not show any errors for things your car doesn't have.
I am using Windows 10 Home 64-bit on a Lenovo Legion gaming laptop. Nothing specialized here, computer-wise. A laptop is preferable since you'll need to do some in-car coding.
The donor instrument cluster MUST have fewer miles than your car in order to use this process.
I bought a cluster from a manual M3, and installed it into a manual 128i. Please do not ask how to install in an automatic, because, I have no idea. I'd assume the process is much the same (it's probably exactly the same, since NCS Expert really does all the footwork for you).
All software below is what I used, and had success with. It's reasonable to assume that it'll work for you, too. If it doesn't, google is a wonderful tool that fixes issues for lots of people (myself included).
You should have a basic understanding of NCS Expert and how it works.
Materials for Coding the New-to-You Cluster:
-R270+ Programmer (like this one)
-SOIC8 Testing Clip (like this one)
-Used Instrument Cluster (This process requires that it has less miles than your car; easy for me, with 196k miles when shopping for M3 parts)
-T10 Torx screwdriver (only necessary for M3 clusters)
-Install R270 Programmer Software (this download is clean, I wouldn't recommend using the disc included with the programmer, RUN SETUP.EXE to install)
-Install HxD hex editor (here)
-Mike's Easy BMW Tools (this is what works for me)
-K-DCAN Cable (this one works for me)
Preparing for Coding:
Make sure all the necessary software has been installed, and that the programs launch correctly. Test the BMW tools by launching INPA and verifying that it's connected.
You'll first need to open-up your new instrument cluster. On the M3 clusters, there are four silver T10 screws on the back that you'll need to loosen before attempting to hulk the thing apart. After those screws are out, work your way around the cluster, popping each of the 6 retainers (2 top, 2 bottom, 1 each side) and slowly pull the two halves apart.
Now, you need to pop the gauge needles off. For this, I recommend cutting out a four-inch square piece of paper, and then cutting a ~2mm-wide slot, about 2 inches long, starting mid-way on one of the sides and going to the center of the square of paper. Now, fit this square of paper underneath the needles, and above the gauge dial. The slot is supposed to let you slide the piece of paper underneath both needles (speedo and fuel, or tach and oil temp) and around their pins so that it protects the dial (they scratch easily). To pop the needles off, I recommend a very thin fork that'll fit around the pins. Just work it under the needles, and gently pry upwards. Shoot for the most vertical motion possible, with as little twisting as possible. If you snap the pins that hold the needles, you pretty much have to scrap that cluster. In a pinch, a thin, flat-blade screwdriver works just fine. Set the needles aside in a safe place after you're done playing with them (we all do it).
This is a tricky one to explain, but here it goes: You now need to flip the cluster over to the black plastic side. You will see a rectangular 18-pin connector (it's the only connector, but I'm trying to be detailed). You need to push downwards on that connector (towards the bottom of the cluster assembly) push it out so that the white plastic part pops out a little, then press the opposite direction on the side that didn't pop out, and kinda wiggle the thing apart. The end result will be a large piece of black plastic, and then the white plastic part with the now exposed backside of the circuit board.
Now, separate the white plastic from the circuitry by releasing four little clips (2 on top, 2 on bottom). For 1-series clusters, you will need to also detach the ribbon cable attached to the LCD panel. Simply disconnect it from the long white connector at the bottom of the circuit board. Now, you can clearly see the brains that make your instrument cluster tick, there's far more going on than you'd think, a far cry from old cars (which makes our jobs super easy).
You are now ready to do the first part of coding.
Clearing Old VIN from EEPROM:
Pull out your R270+ and your SOIC8 test clip. Find your EEPROM. It is an 8-pin chip (four on a side). On the M3 cluster, it is just above the left corner of the LCD display (as shown in the huge picture below). The clip I used (link above), has a pink wire denoting Pin 8. If you look at the text on the EEPROM, correct side up, Pin 8 is on the bottom left of the chip.
Ensure everything is plugged-in and connected. Launch the R270 programmer application, select which chip it is (printed on EEPROM). All three clusters I've seen had 080D0WQ chips, but verify yours because they can be different. Hit "Read" ignore the obnoxious beeps from the programmer box, and save the .BIN file to your desktop (you can save it anywhere, really). Now, close the R270 program, and open HxD. Open the .BIN file. Scroll down to the -2E0 line, and highlight all data in that line, and replace it with FF's. Line -2E0 should read "FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF" when done (you could copy that and paste it into HxD, too). Save the .BIN file, close HxD, and open the R270 app again. Load the .BIN file, then verify the selected chip, and hit write. This process will take about a minute, and there will be lots of beeping.
The programmer comes with just the red board. The clip comes with two adapters, I used the black one with the keyed connector for the clip itself and simply inserted it into the pin holes next to the ZIF socket. (Pic attached)
Once finished, you are done with this part of the install. Disconnect the programmer, and, minus the needles and front cover (part with clear plastic), reassemble the cluster. You should ONLY have the back black plastic part, circuit board, and white plastic part put together.
Coding Cluster to Car with NCS Expert:
After you're done being extremely happy that you did a computer thing, go out to your car with your half-cluster and your needles.
I would disconnect the negative battery lead for this part.
Remove your original cluster, there are two torx (T15??) screws at the top of the hood. Remove those, then use a thin flat-blade screwdriver to push the top of the cluster downwards, then pull the cluster out. Undo the connector on the back (there's a latch mechanism, so be aware of that).
Now, connect your new-to-you cluster, and THEN reconnect the battery, if you disconnected it.
Open your computer, turn the ignition on (door closed, engine not running, climate control unit should turn on). Connect your K-DCAN cable and verify communication with INPA. Open NCS Expert, load "Default profile" (Mike's Tools). Hit "VIN/ZCS/FA" then hit "ZCS/FZ f. ECU" and select "E89" for chassis, then "CAS" for module. Give it a second to fill VIN and VO fields. Hit "Back" then hit "Process ECU" select "KOMBI" and hit ok. "Change job" to "SG_CODIEREN" and the "execute job." It will take a couple seconds and there will be beeping and weird noises. Once done, your new cluster is coded to your car's VIN, and will not show any errors for things your car doesn't have.