When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
Trying to help a friend who imported a XKR from the US from a car sales place that went bankrupt (or something like that) and in anger the owner threw away all the keys of all vehicles he had there (or so the story that was told to my friend). He bought a new key in the US and one here in Norway. One key has ID46 and the other one ID48. Problem is that he first gave the car to a Land Rover Jaguar workshop that removed half the dashboard, then gave up on the car. We found that several modules had been removed and some seemed to have been opened. I am using SDD v130 downloaded from the jaguarforum.com with a good working Mongoose. I tried it on my own Discovery 3 and in Engineering mode changed something in the CFF, and everything works just fine, making me think the diagnostic platform should be ok. However when trying to add one of these keys initially the SDD routine goes well, but then getting "Control module set-up procedure failed".
I also saw this message: Mismatch in control module programming
When I tried to run the Immobilizer routine it fails on a Testman error.
To check if all modules belonged to this car I did the Control module identification routine, all modules (I think) were showing, but the Key Transponder Module had a different part number than was shown on the module itself, which was LNF 2665, but not sure if this is a wrong thing. The last numbers of the VIN were there in the KTM in any case.
Does anyone have an idea what is wrong? Are both keys not correct and that throws these error messages? How to be sure that the KTM module is the original one, it is the only module showing a question mark after the diagnostic scan but there are no KTM faults to be read in the list with DTCs. Is the coil around the ignition barrel just a coil that when energized makes sure the code from the transponder chip in the key can be read and compared with stored codes? Both keys are real ignition keys, not Valet keys, and Ignition can be turned on with both, but obviously starting is not possible since a key is not coded to this car. Any help is much appreciated.
"Control module set-up procedure failed". Welcome to the world of utterly useless error messages - not by any means confined to Jaguar software Yesterday's weather, anyone?
I'm almost at the same stage as you, looking at a late XKR that has been 'doctored', but I'm still learning my way around SDD. I can tell you that LNF2665AA is the correct KTM for the car.
The testman error means that SDD has crashed, AFAIK.
I can't talk to the KTM either:- I also get the question mark on the the vehicle scan, but there's a separate issue I'm still investigating which may or may not be the cause.
Take a look at this thread from norfskate regarding the keys:
Thanks for taking the time.. Someone told the owner (my friend) that the EEPROM inside the KTM can be updated with the transponder code of the ID48 key? I have done such coding with a Range Rover Sport L320 once where both keys were missing. Coded the transponder chip code to the BCM, then the car allowed coding 2 keys to it. Not sure about this Jaguar. Theoretically SDD 130 should be fit for this job, correct? I tried with my original Rotunda VCM from back in the days but although SDD said the VCM was connected it could not read the VIN and gave me XXXX. When entering the VIN manually it came to 98% of the module scan, then stayed there forever. Tried with SDD 162 and an official Diagnostics Associated JLR VCI (Jaguar Land Rover Approved SAE J2534 Pass-Thru Interface) for SDD but got same error messages as in my first post, confirming that the Mongoose and SDD 130 are working ok and that it is the car/modules not cooperating.
Someone told the owner (my friend) that the EEPROM inside the KTM can be updated with the transponder code of the ID48 key?
That is my understanding of the 'Immobilisation setup' process, and up to 5 keys can be programmed. I am using V130 (with clone Mongoose) which will happily read the VIN. I wonder why SDD responds with the question mark when it's clearly able to read your KTM?
edit: I'm wrong here. 'Program new transponder' is the process for adding keys, not immo setup.
Originally Posted by dutchviking
I tried with my original Rotunda VCM from back in the days but although SDD said the VCM was connected it could not read the VIN and gave me XXXX. When entering the VIN manually it came to 98% of the module scan, then stayed there forever.
For me, SDD does take quite a while between 98% and complete. It did stick there once, but that was because I'd not turned the ignition on
I've attached a TSB re the VID block stuff related to the 4.2L. It may be of use if you believe that someone may have been swopping modules around. It's targeted at WDS but valid for IDS/SDD.
Last edited by michaelh; Mar 12, 2026 at 07:56 PM.
Reason: correction
hello , i have the same problem... i have buy a jaguar xk8 year 2005 with no key... i try to learn key but it show me : mismatch in control module programming ... i try also with transpoder id13 also with id48... have you solve the problem ?!
I see that your tool also reports a different part # for the KTM. LNF2665AA is what will be printed on its label, although it is the correct part # for the car. Is it the original one, or possibly a new unprogrammed unit (which might explain the 0xFF bytes)?
Haven't seen dutchviking around since this thread, so no idea if he solved his.
LNF2665AA yes this is label printed .... no its original car ... but i am not sure if anyone before me has try to play with module and make this byte of vin FFFFF... i have read eeprom 93c46 but doenst understend where is bytes of VIN...
LNF2665AA yes this is label printed .... no its original car ... but i am not sure if anyone before me has try to play with module and make this byte of vin FFFFF... i have read eeprom 93c46 but doenst understend where is bytes of VIN...
It was just a thought as the car would obviously be worth more if running. I pulled the eeprom out of the water-damaged module, but there was very little info in there. An SDD trace file showed tha the VIN could possibly be stored there, although it wasn't...