How to Flash a Stock Tune on your Porsche using PIWIS

Alright guys, today I’m going to show you how to flash your Porsche back to its stock tune using PIWIS. Specifically, I’m using PIWIS II on a 2005 Porsche 911 997 Carrera S.

Now, they recommend using a dedicated power supply for this process—personally, I’m just using a trickle charger. It’s worked for me every time, but do this at your own risk.

I’ve got the PIWIS unit connected to the car’s OBD2 port, and the PZ software is up and running on my computer in the back.

One important thing you’ll need is the DME programming code for your car. It’s VIN-specific, and as far as I know, the only way to get it is through your local Porsche dealer. I’ve got a solid relationship with mine—shoutout to those guys—so they hooked me up with the code.

If you don’t have the PIWIS software installed yet, I’ve got a video on that—I’ll try to link it here, but if not, just search my channel for “PZ software install.”

Now, go ahead and turn the ignition on without starting the engine. Make sure everything else—radio, climate control, etc.—is turned off so it doesn’t drain the battery.

Select the 997 from the PIWIS menu. If it doesn’t connect right away, check your USB—if the light isn’t flashing, it’s not connected properly.

Once it’s connected, you’ll get into the system. One thing I’ve never tried before but heard about: under the “Log” section, the vehicle analysis log might tell you if the car’s been flashed before. Mine says “No log present,” but that could just be because I haven’t read one with this car yet. I’ll go ahead and generate one before moving on.

Back in the DME section, head over to the “Programming” tab. It’ll ask you if you want to create a log—click Yes. That’s the log we were trying to access earlier.

Make sure the ignition is still on—it’ll start querying the car’s data and then create your log file. Name it something like “Before Repair.” Once that’s done, you’ll be taken to the programming screen.

We’re now in DME programming. Click Next—you’ll see a warning: engine off, battery charger connected, ignition on, all loads off. Check all that again.

Click Next again and pick your vehicle type: 997 Carrera 2S. Mine’s a coupe with a manual transmission, so that’s what I select.

Then you’ll be asked to choose between EU1, EU2, and EU4 variants. I believe EU1 is for those wanting to remove secondary air and flash for a Rest-of-World spec. But I confirmed—I’m going with the Level 1 U.S. variant.

Select Level 1 and move forward. Now it’s asking whether the control unit is new. If it’s new, you’d enter zeros for the programming and immobilizer codes.

Mine isn’t new, so I’m using the codes I got from Porsche.

Last time I did this, it didn’t ask for both old and new codes, but this time it did—so I’m entering them both. Once you’ve filled out all the boxes, the F12 button becomes active.

Click F12 and it’ll start prepping the flash. You’ll hear some noises from the car—it’s communicating with the module.

Then I get a message: “Data of the installed control units are already up to date. Reprogramming not recommended.” Interesting. That suggests the car might already be running the stock tune, which is what I was trying to flash back to in the first place.

I called a friend to double-check, and their response? “Up to you.” Super helpful.

Anyway, I’m this far in—let’s try Execute instead of Next this time. Same warning message comes up, but now I hit F8 – Execute.

It starts the flash—progress bar shows 0%, then slowly moves. Alright, we wait.

Anyway, the flash jumped quickly after 80%, now it’s at 100%. Car’s beeping and making noises. But then—“Save data could not be written. Please input data manually with F12.”

What data?! Let’s hit F12 and see what happens.

That might’ve been a false alarm—probably just a generic error. It did run for 15 minutes after all.

I checked the car—it’s fine, same as before. Fuel reading is a little off, but it always is. I do have a brake light out.

Let’s check the fault memory—no faults! Awesome.

 

Leave a Reply

Your email address will not be published. Required fields are marked *