This article has been created based on results of FORScan support team work since 2015, in Question-Answer format.
1. I have replaced instrument cluster that is a primary PATS module on my car. Now I’m trying to program 2 keys to the cluster. First key has been programmed successfully, but second one is not. If I try to swap the programming order and program the second key in the first order, it will be programmed successfully, but first key that is programmed in second order will not be programmed. What is wrong and how to fix it?
2. I have erased all known keys from PATS memory and need to program 2 keys now, but I have only 1 key in hands. I have borrowed such a key from my friend, to complete to programming and then return the key back. I have successfully programmed 2 keys and run my engine. But the key I borrowed doesn’t run my friend’s car anymore. Why does it happen and how can we fix it?
3. I have purchased a clone key on Amazon (EBay, AliExpress). The key throws “right” error (B1601, B10D7:51) that indicates PATS can see the transponder. But FORScan is unable to program it. What may be wrong?
4. What is the “Module Initialization” function, why and when do we need it?
5. What are TIMED and CODED methods to access PATS? Where and how are they used?
6. Why doesn’t FORScan have PATS programming function for European models after 2010-2011 model years?
7. Why doesn’t FORScan have PATS programming function for American models after 2015 model year?
8. How to remove MyKey without Admin Key?
PATS programming questions and answers
1. I have replaced instrument cluster that is a primary PATS module on my car. Now I’m trying to program 2 keys to th...
Q: I have replaced instrument cluster that is a primary PATS module on my car. Now I’m trying to program 2 keys to the cluster. First key has been programmed successfully, but second one is not. If I try to swap the programming order and program the second key in the first order, it will be programmed successfully, but first key that is programmed in second order will not be programmed. What is wrong and how to fix it?
There are various reasons why this problem occurs:
Reason 1: It is a quite typical situation when a car’s owner orders a copy of his/her working key in a locksmith, and the workshop mechanic makes a full clone of the key, including transponder. So the owner gets 2 keys that are fully identical. This is convenient and cheap way to get a second key if the first one has been lost. The car may be sold after it and new owner may even have no idea that one of these keys is not genuine and a full clone of the another. But if the owner will erase all keys from PATS memory and try to program these 2 keys, he will get into trouble because PATS will see only 1 unique key. PATS identifies a key by transponder ID , and transponder ID is the same for both of these keys. In order to run the engine, minimum 2 keys must be programmed that is not possible in this situation.
Reason 2: New cheap clone keys may all have the same transponder ID initially. It is typical problem of any clone: when the clone is created, it usually takes IDs and serial number of the original device. So if 100 clones have been made from the same original devices, all 100 will most likely have the same ID or serial number. So if user purchases 2 or 3 of such new clone keys, s/he will be able to program only 1 of them.
Reason 3 (popular in some countries): Lazy alarm installer hides a transponder near the steering column, to implement a remote start through the alarm. So it is possible to program only one PATS key - the one that was hidden. Obviously, this is very unsafe configuration, so the hidden transponder must be immediately removed if found.
How to check: program the first key and check DTC when the second key is inserted into the ignition lock. The DTC code B10D7:51 (for last gen vehicles) or B1601 (for previous gen vehicles) will not be thrown for the second key if it is a clone of the first key.
Solution: Find another key with different transponder ID and program it as the second key.
Back to list of questions
There are various reasons why this problem occurs:
Reason 1: It is a quite typical situation when a car’s owner orders a copy of his/her working key in a locksmith, and the workshop mechanic makes a full clone of the key, including transponder. So the owner gets 2 keys that are fully identical. This is convenient and cheap way to get a second key if the first one has been lost. The car may be sold after it and new owner may even have no idea that one of these keys is not genuine and a full clone of the another. But if the owner will erase all keys from PATS memory and try to program these 2 keys, he will get into trouble because PATS will see only 1 unique key. PATS identifies a key by transponder ID , and transponder ID is the same for both of these keys. In order to run the engine, minimum 2 keys must be programmed that is not possible in this situation.
Reason 2: New cheap clone keys may all have the same transponder ID initially. It is typical problem of any clone: when the clone is created, it usually takes IDs and serial number of the original device. So if 100 clones have been made from the same original devices, all 100 will most likely have the same ID or serial number. So if user purchases 2 or 3 of such new clone keys, s/he will be able to program only 1 of them.
Reason 3 (popular in some countries): Lazy alarm installer hides a transponder near the steering column, to implement a remote start through the alarm. So it is possible to program only one PATS key - the one that was hidden. Obviously, this is very unsafe configuration, so the hidden transponder must be immediately removed if found.
How to check: program the first key and check DTC when the second key is inserted into the ignition lock. The DTC code B10D7:51 (for last gen vehicles) or B1601 (for previous gen vehicles) will not be thrown for the second key if it is a clone of the first key.
Solution: Find another key with different transponder ID and program it as the second key.
Back to list of questions
2. I have erased all known keys from PATS memory and need to program 2 keys now, but I have only 1 key in hands. I h...
Q. I have erased all known keys from PATS memory and need to program 2 keys now, but I have only 1 key in hands. I have borrowed such a key from my friend, to complete to programming and then return the key back. I have successfully programmed 2 keys and run my engine. But the key I borrowed doesn’t run my friend’s car anymore. Why does it happen and how can we fix it?
A. It is normal and expected PATS behaviour. The key programming process on Ford/Mazda is bidirectional, no matter what Internet says about "passive" transponders. It means that not only transponder ID has been written to PATS, but also PATS programs some data to the key which tie the key to this specific car. So the same key can be programmed to any number of vehicles, but it will always run only last of them.
Solution: Your friend will have to erase all keys from the PATS memory and program two keys, including the compromised key. if your friend also has only one key, you will have to find one more (so third) key somewhere.
Back to list of questions
A. It is normal and expected PATS behaviour. The key programming process on Ford/Mazda is bidirectional, no matter what Internet says about "passive" transponders. It means that not only transponder ID has been written to PATS, but also PATS programs some data to the key which tie the key to this specific car. So the same key can be programmed to any number of vehicles, but it will always run only last of them.
Solution: Your friend will have to erase all keys from the PATS memory and program two keys, including the compromised key. if your friend also has only one key, you will have to find one more (so third) key somewhere.
Back to list of questions
3. I have purchased a clone key on Amazon (EBay, AliExpress). The key throws “right” error (B1601, B10D7:51) that ind...
Q. I have purchased a clone key on Amazon (EBay, AliExpress). The key throws “right” error (B1601, B10D7:51) that indicates PATS can see the transponder. But FORScan is unable to program it. What may be wrong?
A: This is quite popular problem with non-genuine keys which are often simply not compatible with genuine keys. Yes, PATS may see the transponder but cannot program it. It often happens in case of genuine key is 40bit and the replacement key is 80bit. Key sellers claim that 80bit transponders are backward compatible with 40bit ones, but our exprience shows this is far from always the case.
Solution: purchase a genuine key or try you luck with another clone.
Back to list of questions
A: This is quite popular problem with non-genuine keys which are often simply not compatible with genuine keys. Yes, PATS may see the transponder but cannot program it. It often happens in case of genuine key is 40bit and the replacement key is 80bit. Key sellers claim that 80bit transponders are backward compatible with 40bit ones, but our exprience shows this is far from always the case.
Solution: purchase a genuine key or try you luck with another clone.
Back to list of questions
4. What is the “Module Initialization” function, why and when do we need it?
Q. What is the “Module Initialization” function, why and when do we need it?
A. Module initialization function is required for the vehicles that have distributed PATS, so two or more modules (ECUs) are involved into the vehicle security. One of modules is "primary" one that stores keys and manage the programming process. Other modules are "auxiliary" that provide security on the specific block (usually PCM, FIP or ABS). For example, instrument cluster (IC) is a primary PATS module for EU Focus Mk2 and PCM is an auxiliary. If IC cannot read a key, PCM will not let run the engine. Primary and auxiliary modules have to be "matched" (paired), otherwise a theft may run the engine with his own PCM. So the Module Initialization function performs the pairing.
The above explains when user needs to use this function: it has to be used ONLY if you have replaced one or several PATS modules. It is BAD idea to run this function "just in case" after keys programming (although some rare cars require it - for example, AU models).
Back to list of questions
A. Module initialization function is required for the vehicles that have distributed PATS, so two or more modules (ECUs) are involved into the vehicle security. One of modules is "primary" one that stores keys and manage the programming process. Other modules are "auxiliary" that provide security on the specific block (usually PCM, FIP or ABS). For example, instrument cluster (IC) is a primary PATS module for EU Focus Mk2 and PCM is an auxiliary. If IC cannot read a key, PCM will not let run the engine. Primary and auxiliary modules have to be "matched" (paired), otherwise a theft may run the engine with his own PCM. So the Module Initialization function performs the pairing.
The above explains when user needs to use this function: it has to be used ONLY if you have replaced one or several PATS modules. It is BAD idea to run this function "just in case" after keys programming (although some rare cars require it - for example, AU models).
Back to list of questions
5. What are TIMED and CODED methods to access PATS? Where and how are they used?
Q. What are TIMED and CODED methods to access PATS? Where and how are they used?
A. Diagnostic equipment has to gain a special security access to the PATS for programming. There are 2 security access methods: CODED and TIMED.
Coded method uses classic seed-key scheme: PATS module generates special code called Outcode, that plays a role of seed. Diagnostic equipment must provide a special key, called Incode, generated specially for the Outcode. The idea is that special Outcode/Incode calculators are used which can be accessed only by authorized staff.
Advantages of the coded method:
- quick access to PATS
- high security level if the Outcode/Incode calculator is only available for authorized staff.
Drawbacks of the coded method:
- If the Outcode/Incode calculator is only available for authorized staff, car owner has to visit authorized locksmith (long and expensive).
- If the Outcode/Incode calculator is available to everyone, level of security becomes quite low.
Note: FORScan implements additional security measures to protect cars from an unauthorized PATS programming.
The idea of timed access is that thefts try to hijack the car in no more than several minutes, and if the attempt requires more time, they retire. So 10-12 minutes is considered to be a safe time interval. Thus, in order to get access to PATS using TIMED method, diagnostic equipment needs to connect to the car, start gaining access procedure and wait for 10 minutes.
Advantages of the timed method:
- No any calculators are required
Drawbacks of the timed method:
- Gaining security access requires significant time, especially considering that sometimes it has to be initiated several times to complete the programming.
- the idea of safe time interval may not work sometimes or somewhere.
Coded access is used in European models of Ford/Mazda/Lincoln/Mercury. Timed acess is used in cars for domestic (American) market up to 2013-2015 (depends on platform). New domestic market cars starting from 2013-2015 (depends on platform) use a kind of coded access.
Back to list of questions
A. Diagnostic equipment has to gain a special security access to the PATS for programming. There are 2 security access methods: CODED and TIMED.
Coded method uses classic seed-key scheme: PATS module generates special code called Outcode, that plays a role of seed. Diagnostic equipment must provide a special key, called Incode, generated specially for the Outcode. The idea is that special Outcode/Incode calculators are used which can be accessed only by authorized staff.
Advantages of the coded method:
- quick access to PATS
- high security level if the Outcode/Incode calculator is only available for authorized staff.
Drawbacks of the coded method:
- If the Outcode/Incode calculator is only available for authorized staff, car owner has to visit authorized locksmith (long and expensive).
- If the Outcode/Incode calculator is available to everyone, level of security becomes quite low.
Note: FORScan implements additional security measures to protect cars from an unauthorized PATS programming.
The idea of timed access is that thefts try to hijack the car in no more than several minutes, and if the attempt requires more time, they retire. So 10-12 minutes is considered to be a safe time interval. Thus, in order to get access to PATS using TIMED method, diagnostic equipment needs to connect to the car, start gaining access procedure and wait for 10 minutes.
Advantages of the timed method:
- No any calculators are required
Drawbacks of the timed method:
- Gaining security access requires significant time, especially considering that sometimes it has to be initiated several times to complete the programming.
- the idea of safe time interval may not work sometimes or somewhere.
Coded access is used in European models of Ford/Mazda/Lincoln/Mercury. Timed acess is used in cars for domestic (American) market up to 2013-2015 (depends on platform). New domestic market cars starting from 2013-2015 (depends on platform) use a kind of coded access.
Back to list of questions
6. Why doesn’t FORScan have PATS programming function for European models after 2010-2011 model years?
Q. Why doesn’t FORScan have PATS programming function for European models after 2010-2011 model years?
A. Ford models for EU market used coded access to PATS. Old models prior to 2011 used so-called "old" coded method, outcode/incode calculator for it is available in public access. Newer models after 2010-2011 have new coded methods which have no outcode/incode calculators available. So, although it is not a problem to implement PATS programming functions for new cars, it doesn't make sense without the calculator.
There are few exceptions from this rule: some new models sold on EU market have timed access, so FORScan has PATS programming function for these cars.
We work on the PATS programming problem. In FORScan 2.3.56 we added support for the following models of EU, NA and global markets:
Galaxy/S-Max (Europe) 2015 model year
Edge 2015-2020 model years
Escort 2015-2018 model years
Everest 2015 model year
Explorer 2016-2019 model years
F-150 2015-2019 model years
F250...F450 2017-2020 model years
Fusion 2013-2020 model year
Ka / Figo 2015 model year
Mondeo Mk5 (China) 2013-2019 model years
Mondeo Mk5 (Europe) 2015 model year
Mustang 2015-2019 model years
Ranger 2015 model year
Transit Custom 2016 model year
Lincoln Continental 2017-2020 model years
Lincoln MKC 2015-2019 model year
Lincoln MKX/Nautilus 2016-2020 model years
Lincoln MKZ 2013-2020 model year
Other models are still in work.
Back to list of questions
A. Ford models for EU market used coded access to PATS. Old models prior to 2011 used so-called "old" coded method, outcode/incode calculator for it is available in public access. Newer models after 2010-2011 have new coded methods which have no outcode/incode calculators available. So, although it is not a problem to implement PATS programming functions for new cars, it doesn't make sense without the calculator.
There are few exceptions from this rule: some new models sold on EU market have timed access, so FORScan has PATS programming function for these cars.
We work on the PATS programming problem. In FORScan 2.3.56 we added support for the following models of EU, NA and global markets:
Galaxy/S-Max (Europe) 2015 model year
Edge 2015-2020 model years
Escort 2015-2018 model years
Everest 2015 model year
Explorer 2016-2019 model years
F-150 2015-2019 model years
F250...F450 2017-2020 model years
Fusion 2013-2020 model year
Ka / Figo 2015 model year
Mondeo Mk5 (China) 2013-2019 model years
Mondeo Mk5 (Europe) 2015 model year
Mustang 2015-2019 model years
Ranger 2015 model year
Transit Custom 2016 model year
Lincoln Continental 2017-2020 model years
Lincoln MKC 2015-2019 model year
Lincoln MKX/Nautilus 2016-2020 model years
Lincoln MKZ 2013-2020 model year
Other models are still in work.
Back to list of questions
7. Why doesn’t FORScan have PATS programming function for American models after 2015 model year?
Q. Why doesn’t FORScan have PATS programming function for American models after 2015 model year?
A. Ford models for domestic market historically used timed access to PATS. But on the next change of generations that happened in 2013-2015 (depends on platform) the concept was changed and now PATS in new American cars has been protected with a kind of coded access which has no outcode/incode calculator available. So, although it is not a problem to implement PATS programming functions for new cars, it doesn't make sense without the calculator.
We work on the PATS programming problem.
We work on the PATS programming problem. In FORScan 2.3.56 we added support for the following models of EU, NA and global markets:
Galaxy/S-Max (Europe) 2015 model year
Edge 2015-2020 model years
Escort 2015-2018 model years
Everest 2015 model year
Explorer 2016-2019 model years
F-150 2015-2019 model years
F250...F450 2017-2020 model years
Fusion 2013-2020 model year
Ka / Figo 2015 model year
Mondeo Mk5 (China) 2013-2019 model years
Mondeo Mk5 (Europe) 2015 model year
Mustang 2015-2019 model years
Ranger 2015 model year
Transit Custom 2016 model year
Lincoln Continental 2017-2020 model years
Lincoln MKC 2015-2019 model year
Lincoln MKX/Nautilus 2016-2020 model years
Lincoln MKZ 2013-2020 model year
Other models are still in work.
Back to list of questions
A. Ford models for domestic market historically used timed access to PATS. But on the next change of generations that happened in 2013-2015 (depends on platform) the concept was changed and now PATS in new American cars has been protected with a kind of coded access which has no outcode/incode calculator available. So, although it is not a problem to implement PATS programming functions for new cars, it doesn't make sense without the calculator.
We work on the PATS programming problem.
We work on the PATS programming problem. In FORScan 2.3.56 we added support for the following models of EU, NA and global markets:
Galaxy/S-Max (Europe) 2015 model year
Edge 2015-2020 model years
Escort 2015-2018 model years
Everest 2015 model year
Explorer 2016-2019 model years
F-150 2015-2019 model years
F250...F450 2017-2020 model years
Fusion 2013-2020 model year
Ka / Figo 2015 model year
Mondeo Mk5 (China) 2013-2019 model years
Mondeo Mk5 (Europe) 2015 model year
Mustang 2015-2019 model years
Ranger 2015 model year
Transit Custom 2016 model year
Lincoln Continental 2017-2020 model years
Lincoln MKC 2015-2019 model year
Lincoln MKX/Nautilus 2016-2020 model years
Lincoln MKZ 2013-2020 model year
Other models are still in work.
Back to list of questions
8. How to remove MyKey without Admin Key?
Q. How to remove MyKey without Admin Key?
A. If you lost admin key, you have two options.
First option is to add/program a new PATS key, it will become admin key by default. Using this new admin key you can remove MyKey limit on your existing key(s). This option is recommended as it is safe.
Second option is to erase all current PATS keys, then program at least two keys. These keys will have no MyKey limit anymore. This option is preferable if you have at least two keys with different transponder IDs (not a clone of each other) and don't want or don't need to purchase one more key. However, this option is less safe than the first one because if something goes wrong after erasing existing keys, the engine will not run.
Back to list of questions
A. If you lost admin key, you have two options.
First option is to add/program a new PATS key, it will become admin key by default. Using this new admin key you can remove MyKey limit on your existing key(s). This option is recommended as it is safe.
Second option is to erase all current PATS keys, then program at least two keys. These keys will have no MyKey limit anymore. This option is preferable if you have at least two keys with different transponder IDs (not a clone of each other) and don't want or don't need to purchase one more key. However, this option is less safe than the first one because if something goes wrong after erasing existing keys, the engine will not run.
Back to list of questions