CGDI BMW Tutorials: 2008 BMW 335i E90 New Key Programming

Topic: use CGDI BMW to program a new gray key for my 2008 BMW 335i E90 (It’s the same process on the E70). This isn’t a how-to so much as an overview of the process as I stumble through it.

I bought a new key, so this is a generic key, we can find on google like 20 bucks, I don’t think it’s 20 dollars and another one with BMW logo is my good key over here from the factory, this particular car only came with one valid key when I purchased it, so I’d like to have a second one as a backup.

You’ll see key on it is blank, so there’s nothing cut into this key at all, it’s completely blank.

Now on top of that this one actually takes a non-rechargeable battery, back panel pops out you can see a little a seam right here, I actually kind of prefer that even though will wear out more frequently, this is a serviceable key over its life, now it feels pretty decent overall, the only thing is I’ve read there are no weather seals inside of this, we’ll see how it works, I’m gonna try and use it.

Anyway back to the point of this article, we need to code this key well new key, anyway so I’ve heard and we’re gonna try it right now that if you lock the car with the factory key, so cars locked and we unlock it.

So car is lit up, it’s unlocked it recognizes this key

And you take the new one key and you pop it in the dash right here.

In theory, it’s supposed to code it if it came from the dealership that is and as you can tell I don’t think it’s working. So it’s not working right now I’m trying to hold this one next to the steering column here, there’s anything on this car but it’s my key, it’s right there and hit the button again, hold it and you got nothing hold the brake, nothing so I’m pretty sure that doesn’t work.

So then What we’ve got is this CGDI BMW interface right here, it’s visible code a dealer key and the real reason I bought it is I can swap out the ECU on here the DME, I have the older MSD80 that’s known for dying bad and I’m up an MSD81 in this car, it’s the updated one and to do that you need a special device which this is one of them, so I purchased it for that reason.

So the next thing, we’re gonna try is possibly code this new key using CGDI, so I will do my best to see if we can get this to work now I haven’t done this before.

To pass it through, I’ve got it running inside a VM And this isn’t really a how-to article, it’s more of a if you happen to have this CGDI, t will actually work the way it’s intended article.

Yeah connect


okay here we go.

I’ll update that later it’s actually fully up-to-date, so I don’t really know what’s in this car or what I’m doing, which is safe, I’m sure.

So think what I need is CAS1 – CAS3+ key match.

Let’s read key info, it’s doing stuff.

Please pop up the key from the ignition, I think that means this one needs to be super weird. So I need to save that alright, so should probably this out before I upload it, gonna work, we’ve got key IDs that two keys are filled on this.

Yeah, so it looks like I think I have two keys programmed for this car, the rest of them are currently unused but they all have prefilled passwords and I think when you buy a car from the dealership and I could be wrong.

They prefilled it with a password and then your car will code it because this new key came from eshop, it doesn’t have that password prefilled, so I need to use this instead.

Now I’m gonna hit “generate dealer key”.

Select the key number first we’re gonna hit key 3.

I try to be the wrong one and I’ll probably break my car.

Generate dealer key.

Then I put this blank key into the CGDI coil.

Now I hit “Next” work key is being read.

Key is blank, okay it says that’s an error.

Pop up the key from the ignition.

Read key success.

Now back EEPROM.

Alright dealer key.

h I know what I did wrong, I think I need to put my good key into the CGDI coil.

So I just put my good key in first and now the blank key.

I have no idea if this is a smart here or not, we’re gonna say yes, key is being programmed.

Programming was successful.

I’ve got my blank key here.

After programming I assume this is done, we’re gonna pop it in the ignition to start, look at that it works.

Put my other key in there, so I have two working keys now.

But that does answer the question you need an interface like CGDI BMW or another programming interface, if you want to use one of those generic blank keys, unfortunately it doesn’t work just by popping it into your dash.

Oh, yes, this is the new one key, it locks and unlocks as well, so it’s a fully working key, of course the blank laser cut key, that’s inside I’m going to have to figure out a solution for that, I’m thinking about making a jig, so I can cut my own, otherwise you need to find a locksmith that can

cut this type of keys and everything is cheap.

Hope it helps!

Read more CGDI BMW tutorial in this blog.

Or get one reliable CGDI BMW from